So lesen und schreiben Sie Textdateien in Python

So lesen und schreiben Sie Textdateien in Python
In diesem Artikel wird eine Anleitung behandelt, in der die externe Dateibehandlung in Python erläutert wird. Das Hauptaugenmerk liegt auf dem Öffnen und Schließen von Text und anderen nicht-binären Datendateien, die in einem Speichermedium gespeichert sind, sodass Sie verschiedene Vorgänge für Inhalt der geöffneten Dateien ausführen können.

Öffnen und Schließen einer Datei

Daten aus einer Textdatei mit dem Namen „Daten lesen.txt ”Sie müssen die„ Open “-Methode verwenden, die mit offiziellen Python -Builds geliefert wird. Überprüfen Sie den folgenden Beispielcode:

f = offen ('Daten.txt ',' r ')
F.schließen()

Die erste Anweisung öffnet die „Daten.TXT ”-Datei im Modus„ R “(schreibgeschützt). Die Methode „Öffnen“ akzeptiert einen Dateinamen und den Modus zum Umgang mit der Datei als Argumente. Neben dem „R“ -Modus gibt es auch andere Modi, die später erklärt werden. Das obige Code -Snippet führt keine Vorgänge in der geöffneten Datei aus. Mit der Methode „Schließen“ wird die geöffnete Datei sauber geschlossen, damit der Speicher befreit werden kann, und um Datenbeschädigungen in der geöffneten Datei zu vermeiden, die manchmal passieren kann, wenn die Datei nicht ordnungsgemäß geschlossen ist.

Anstatt die Methode „Öffnen“ zu verwenden, um das Öffnen und Schließen von Dateien zu verarbeiten, können Sie sie mit dem Schlüsselwort „mit“ kombinieren und die Anweisung "Open" verwenden.

mit offen ('Daten.txt ',' r ') als f:
passieren

Der Hauptvorteil der Verwendung einer Anweisung "mit offener" besteht darin, dass der Interpreter die geöffnete Datei automatisch sicher schließt, wenn der Codeblock „mit offenem“ Codeblock vollständig analysiert wird. Obwohl der Müllsammler in Python nach einer Weile nach voreingestellten Regeln automatisch geöffnete Dateien schließt.

Lesen von Zeilen einer Textdatei

Verwenden Sie zum Lesen von Inhalten einer Datei das folgende Code -Beispiel:

mit offen ('Daten.txt ',' r ') als f:
Daten = f.lesen()
Druck (Daten)

Zum Beispiel, wenn „Daten.Die Datei txt ”enthält 1-10 Nummern, jeweils in einer neuen Zeile, erhalten Sie nach dem Ausführen des oben genannten Codes die folgende Ausgabe:

Der gesamte Datendump der „Daten.Die TXT -Datei wird in der Variablen "Daten" gespeichert. Wenn Sie Zeilen in einer Liste lesen möchten, können Sie folgende Code -Beispiele verwenden:

mit offen ('Daten.txt ',' r ') als f:
Daten = f.Readlines ()
Drucken (Daten) mit offenem ('Daten.txt ',' r ') als f:
Daten = Liste (f)
Druck (Daten)

Beachten Sie, dass Sie mit den obigen Snippets das Zeichen „\ n“ (Newline) am Ende jedes Elements in der Liste erhalten können. Um diese Newline -Zeichen zu entfernen, müssen Sie möglicherweise die Liste durchlaufen. Sie können beide eine neue Liste erstellen und neue Zeilenzeichen streifen, indem Sie stattdessen den folgenden Code verwenden:

Data_List = []
mit offen ('Daten.txt ',' r ') als f:
Für Zeile in F:
Data_List.anhängen (Zeile.Streifen())
print (data_list)

Wenn Sie den obigen Code ausführen, können Sie die Ausgabe folgen:

Daten in eine geöffnete Datei schreiben

Um Daten in eine Datei zu schreiben, die mit der Anweisung „mit offener“ geöffnet wird, müssen Sie einen anderen Öffnungsmodus als Argument angeben. Hier sind einige der Modi:

  • 'a' - Wird zum Anhängen von Daten am Ende einer geöffneten Datei verwendet, erstellt eine neue Datei, wenn sie nicht vorhanden ist
  • 'W' - löscht Inhalt geöffneter Datei und schreibt neue Daten, erstellt eine neue Datei, wenn sie nicht vorhanden ist
  • 'r' - schreibgeschützter Modus (Standardmodus Wenn kein Argument geliefert wird)
  • 'R+' - Wird sowohl zum Lesen als auch zum Schreiben verwendet (die erste Position liegt am Anfang der Datei)
  • 'B' - Die Datei wird im Binärmodus geöffnet (nützlich für Nicht -Text -Binärdateien), kann mit anderen Modi kombiniert werden
  • 'a+' - Wird zum Lesen und Anhängen verwendet, erstellt eine neue Datei, wenn sie nicht vorhanden ist
  • 'W+' - Wird zum Lesen und Schreiben verwendet, erstellt eine neue Datei, wenn sie nicht vorhanden ist

Einige Code -Ausschnitte, die verschiedene Modi zum Schreiben von Daten verwenden, sind unten aufgeführt.

Verwenden Sie das folgende Beispiel, um neue Inhalte in eine Textdatei zu schreiben, während Sie vorhandene Daten löschen:

mit offen ('Daten.txt ',' w ') als f:
F.schreiben ("1 \ n2")

Nach dem Ausführen des Snippets oben 1-10 Zahlen in den „Daten.Die TXT -Datei sollte durch zwei neue Zeilen ersetzt werden.

Um zum Beginn einer Textdatei Zeilen hinzuzufügen, müssen Sie die Methode „Seek“ verwenden, um zur Startposition des Dateipuffer zurückzukehren:

mit offen ('Daten.txt ',' r+') als f:
Daten = f.lesen()
F.suchen (0)
F.schreiben ("-1 \ n0 \ n")
F.Schreiben (Daten)

Nach dem Ausführen des Snippets oben werden die Nummern -1- und 0 -Zahlen zu den beiden oberen Zeilen in „Daten.txt ”Dateien.

Verwenden Sie das folgende Beispiel, um Daten am Ende der Datei anzuhängen:

mit offen ('Daten.txt ',' a ') als f:
F.schreiben ("11 \ n12")

Nach dem Ausführen des Snippets oben werden 11 und 12 Zahlen am Ende der Datei hinzugefügt.

Abschluss

Integrierte Klassen und Methoden in Python bieten eine robuste Möglichkeit, Textdateien zu verarbeiten. Mit nur wenigen Codezeilen können Sie vorhandene Daten in einer Datei manipulieren und neue Zeilen einfügen.