Zeilen in Dateien mit Python suchen und ersetzen
Angenommen, wir haben eine Textdatei und möchten bestimmte Zeilen ändern, indem wir ein bestimmtes Wort durch ersetzen ein anderer. Wir überlegen zunächst, die gesamte Datei zur Verarbeitung in den Speicher zu laden und zurückzuschreiben. Es gibt jedoch einen effizienteren Ansatz.
Verwendung des Fileinput-Moduls
Das Fileinput-Modul bietet eine unkomplizierte Lösung. Mithilfe der Funktion „input()“ können wir die Datei Zeile für Zeile durchlaufen und sie gleichzeitig direkt ändern. Hier ist ein Beispiel:
import fileinput for line in fileinput.input("test.txt", inplace=True): newline = line.replace('foo', 'bar') print(newline, end='')
Dieser Code ersetzt das Vorkommen von „foo“ durch „bar“ in der Datei Zeile für Zeile. Da fileinput direkt in die Originaldatei schreibt, wird keine Zwischendatei erstellt.
Alternative Ansätze
Für kleine Dateien umfasst ein alternativer Ansatz:
Bei größeren Dateien Folgendes in Betracht ziehen:
Dieser Ansatz erfordert zusätzlichen temporären Speicherplatz, ist aber für große Dateien effizient.
Fazit
Abhängig von der Dateigröße und den spezifischen Anforderungen bieten diese Ansätze effiziente Methoden zum Suchen und Ersetzen von Zeilen in einer Datei mit Python.
Das obige ist der detaillierte Inhalt vonWie kann ich mit Python effizient Text in Dateien suchen und ersetzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!