müssen mehrere Textdateien gleichzeitig ändern? Ändern Sie beispielsweise die britische Schreibweise aller Dokumente in die amerikanische Rechtschreibung. In diesem Artikel wird zeigen, wie man Python verwendet, um diese Aufgabe effizient zu erledigen.
Angenommen, Sie haben fünf Textdateien, die " welt " als " wolrd " falsch schreiben. Wir werden Python -Skripte verwenden, um die Schreibweise von Wörtern in all diesen Dateien zu korrigieren.
Bereiten Sie zunächst die zu verarbeitenden Daten vor (Textdatei). In diesem Tutorial wird ein Verzeichnis namens " Hallo " erstellt, das mehrere Dateien und Subdirektorien sowie Textdateien mithilfe 1.TXT , 2.txt , 3.txt , 4.txt und und 5. 5. 5. 5. 5. 5. 5. 5. 5. 5., enthält.
Obwohl die von uns verwendete Funktion alle Dateien im Verzeichnis iteriert, können Sie in Ihrem Code bedingte Anweisungen hinzufügen, um nur Dateien zu verarbeiten, die geändert werden müssen.
Lesen Sie als nächstes den Inhalt des Verzeichnisses " Hallo ". Sie können die for-in
-Schule verwenden, um die Methode is_file()
und die startswith()
-Methode zum Lesen und Schreiben der Zieldatei zu kombinieren.
Wir öffnen die Datei im r
-Modus, um den Dateiinhalt zu lesen und in die Datei zu schreiben, nachdem die erforderlichen Änderungen vorgenommen wurden.
if not item.name.startswith('.') and item.is_file(): with open(item, mode="r+") as file: file_text = file.read()
Der Schlüsselschritt besteht darin, nach dem regulären Ausdruck nach " wolrd " zu suchen. Verwenden Sie in Python re.compile()
, um reguläre Ausdrücke zu kompilieren:
kompilieren Sie das reguläre Expressionsmuster in ein reguläres Ausdrucksobjekt und können mit seiner
search()
-Methode übereinstimmen.
Verwenden Sie dann die Methode sub()
, um die falsche Schreibweise durch die richtige Schreibweise zu ersetzen:
regex = re.compile('Wolrd') file_text = regex.sub('World', file_text)
Schreiben Sie schließlich den ersetzten neuen Text in die Datei:
file.seek(0) file.write(file_text)
Das vollständige Python -Skript lautet wie folgt, das in jeder Datei nach " wolrd " sucht und es durch " welt " ersetzt:
import os, re with os.scandir('hello') as directory: for item in directory: if not item.name.startswith('.') and item.is_file(): with open(item, mode="r+") as file: file_text = file.read() regex = re.compile('Wolrd') file_text = regex.sub('World', file_text) file.seek(0) file.write(file_text)
Wie Sie sehen, verwendet Python die for
-Schule, um mehrere Dateien einfach zu ändern. Es ist wichtig, sich daran zu erinnern, dass regelmäßige Ausdrücke für das Musteranpassung verwendet werden.
Weitere Informationen zu Python -Schleifen finden Sie in der detaillierten Erklärung von Python Loops. Weitere Informationen zu regulären Ausdrücken finden Sie im Tutorial Python Regular Expression.
Dieser Artikel wurde aktualisiert und enthält die Beiträge von Monty Shokeen. Monty ist ein Full-Stack-Entwickler, der es liebt, Tutorials zu schreiben und neue JavaScript-Bibliotheken zu lernen.
Das obige ist der detaillierte Inhalt vonWie Sie mit Python Änderungen an mehreren Dateien vornehmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!