-2

データのテキストファイルがあります。このように見えますが、数百行あります。

Test: 0
AssignentDone
UserDone
johndoe
Assignment8
Resp: YES
Trade: YES
Journal: YES

ユーザー名のリストを作成する必要があります。各人の下のデータはすべてまとまりがありませんが、各人のデータの最後に「UserDone」という行があり、その次の行に新しいユーザーの名前があります。

私はこれを持っています

def get_names( file ):
    with open("userdata.txt", "rt") as file:
        for line in file:
            if "UserDone" in line:
                students= list(file.readlines()[1])`

これを実行すると、

ValueError: Mixing iteration and read methods would lose data

Pythonに「UserDone」行を認識させてから、次の行をリストに追加する方法はありますか?

4

2 に答える 2

0

おそらく.split関数を見てください。http://docs.python.org/2/library/stdtypes.html#str.split

または正規表現モジュール:http ://docs.python.org/2/library/re.html

于 2013-02-08T20:19:20.613 に答える