Mehrmaliges Durchlaufen einer Datei
In Python wird beim Durchlaufen einer Datei mit readlines() die gesamte Datei in den Speicher eingelesen und gespeichert als Liste von Zeilen. Wenn Sie die Datei erneut durchlaufen, hat Python bereits das Ende der Datei erreicht, sodass nichts mehr zu lesen ist.
Normales Verhalten
Ja, es ist normales Verhalten Das mehrmalige Durchlaufen einer Datei schlägt fehl, es sei denn, Sie setzen die Iteration zurück. Dies liegt daran, dass Pythons Datei-E/A sequentiell arbeitet und sich während der ersten Iteration vom Anfang der Datei bis zum Ende bewegt.
Zurücksetzen der Iteration
Zum Zurücksetzen der Iteration und Wenn Sie die Datei noch einmal lesen, haben Sie zwei Möglichkeiten:
Verwenden der with-Anweisung
Ein bequemerer Ansatz ist die Verwendung der with-Anweisung, die die Datei beim Verlassen des Codeblocks automatisch schließt. Dadurch können Sie die Datei wiederholt durchlaufen, ohne sie explizit zu schließen und erneut zu öffnen:
with open('baby1990.html', 'rU') as f: for line in f: print(line)
Durch die Verwendung der with-Anweisung können Sie den Codeblock mehrmals ausführen und die Datei jedes Mal lesen, ohne sich Gedanken über das Zurücksetzen machen zu müssen Iteration.
Das obige ist der detaillierte Inhalt vonWarum schlägt das mehrmalige Durchlaufen einer Python-Datei fehl und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!