Heim > Backend-Entwicklung > Python-Tutorial > Kann ich Dateizeilen während der Iteration in Python direkt ändern?

Kann ich Dateizeilen während der Iteration in Python direkt ändern?

Patricia Arquette
Freigeben: 2024-12-04 13:24:11
Original
730 Leute haben es durchsucht

Can I Modify File Lines In-Place While Iterating in Python?

Zeilen in einer Datei direkt ändern

Ist es möglich, eine Datei Zeile für Zeile nacheinander zu analysieren und dabei Zeilen direkt zu ändern? Iterieren durch die Datei?

Antwort:

Ja, dies kann durch die Verwendung einer Sicherungsdatei simuliert werden, wie sie im Fileinput-Modul innerhalb der Python-Standardbibliothek implementiert ist.

Beispielcode:

Betrachten Sie das folgende Skript, das Zeilen entfernt, die dies nicht tun Erfüllen Sie eine bestimmte Bedingung, die von der Funktion some_condition aus bereitgestellten Dateien oder Standardeingaben angegeben wird:

#!/usr/bin/env python
# grep_some_condition.py
import fileinput

for line in fileinput.input(inplace=True, backup='.bak'):
    if some_condition(line):
        print(line, end="")  # This outputs modified lines to the current file
Nach dem Login kopieren

Verwendungsbeispiel:

Um dieses Skript zu verwenden, führen Sie den folgenden Befehl aus:

$ python grep_some_condition.py first_file.txt second_file.txt
Nach dem Login kopieren

Bei der Ausführung werden sowohl „first_file.txt“ als auch „second_file.txt“ so geändert, dass sie nur Zeilen enthalten, die die Anforderungen erfüllen some_condition-Prädikat.

Das obige ist der detaillierte Inhalt vonKann ich Dateizeilen während der Iteration in Python direkt ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage