Um große Dateien Zeile für Zeile effizient zu verarbeiten, ist dies häufig erforderlich um jede Zeile als Element in einer Liste zu lesen und zu speichern. Hier sind verschiedene Ansätze, um dies zu erreichen:
Zeilenenden lesen und entfernen:
Der folgende Code verwendet ein Listenverständnis mit der rstrip()-Methode, um alle Leerzeichen zu entfernen (Zeilenumbrüche und Leerzeichen) ab dem Ende jeder Zeile:
with open(filename) as file: lines = [line.rstrip() for line in file]
Lesen und Verarbeiten Zeile für Zeile:
Bei großen Dateien ist es effizienter, jede Zeile einzeln zu verarbeiten, ohne die gesamte Datei in den Speicher zu laden:
with open(filename) as file: for line in file: print(line.rstrip())
Verwenden Sie die Walross-Operator (Python 3.8):
Seit Python 3.8 den Walross-Operator eingeführt hat, können Sie ihn zur Vereinfachung verwenden die obige Schleife:
with open(filename) as file: while line := file.readline(): print(line.rstrip())
Angeben des Dateizugriffsmodus und der Kodierung:
Abhängig von der Kodierung Ihrer Datei und der beabsichtigten Verwendung möchten Sie möglicherweise den Zugriffsmodus und angeben Zeichenkodierung:
with open(filename, 'r', encoding='UTF-8') as file: while line := file.readline(): print(line.rstrip())
Diese Methoden bieten maßgeschneiderte Lösungen für verschiedene Dateiverarbeitungsszenarien und gewährleisten optimale Leistung und Flexibilität bei der Arbeit mit Textdateien in Python.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Datei Zeile für Zeile lesen und jede Zeile in einer Python-Liste speichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!