So schreiben Sie in Python in eine Datei (Schreiben und Anhängen)

Erfahren Sie, wie Sie in Python Text in Dateien schreiben. Meistern Sie den Unterschied zwischen den Modi „Schreiben“ („w“) und Anhängen („a“) mit sicheren Kontextmanagern.

Probieren Sie diese Lösung im Editor aus

Übersicht

Das Schreiben von Daten in Dateien ist eine grundlegende Aufgabe beim Erstellen von Skripten, beim Speichern von Programmzuständen, beim Erstellen von Protokollen oder beim Exportieren von Berichten. Python vereinfacht die Dateiausgabe mithilfe der integrierten Funktion „open()“, kombiniert mit spezifischen Dateizugriffsmodi, die steuern, wie Daten auf die Festplatte geschrieben werden.

Beim Schreiben von Dateien sind die beiden häufigsten Modi der Schreibmodus („w“`) und der Anhängemodus („a“`). Der Schreibmodus überschreibt die Datei vollständig, wenn sie bereits vorhanden ist, oder erstellt eine neue, wenn dies nicht der Fall ist. Der Append-Modus behält vorhandenen Inhalt bei und schreibt neue Daten direkt an das Ende der Datei. Die Verwendung des falschen Modus kann zu versehentlichem Datenverlust führen. Wählen Sie ihn daher sorgfältig aus.

Ähnlich wie beim Lesen von Dateien sollten Sie immer die Anweisung „with open(...)“ verwenden. Dadurch wird sichergestellt, dass der Dateipuffer geleert und das Dateihandle ordnungsgemäß geschlossen wird, wodurch Systemressourcen gespart und Datenbeschädigungen verhindert werden. Zum Schreiben von String-Listen stellt Python die Methode „.writelines()“ bereit, die Massenschreibvorgänge sauber und effizient macht.

Code- und Ausführungsausgabe

Dieses Skript demonstriert das Überschreiben, Anhängen und Anzeigen von Dateien in Python.

# 1. Overwrite a file (or create new) using "w"
with open("output.txt", "w") as file:
    file.write("Hello World from Python!\n")
    file.write("Writing file content is simple.\n")

# 2. Append new content to the file using "a"
with open("output.txt", "a") as file:
    file.write("This line is appended.\n")

# 3. Reading the file back to verify contents
with open("output.txt", "r") as file:
    print(file.read().strip())
Terminal-Ausgabe
Hello World from Python!
Writing file content is simple.
This line is appended.

Schrittweise Umsetzung

  • Mit open('filename', 'w') als Datei verwenden, um eine Datei zu überschreiben oder zu erstellen.
  • Mit open('filename', 'a') as file verwenden, um Text am Ende der Datei anzuhängen.
  • Rufen Sie file.write('string') auf, um einzelne Textsegmente in die Datei zu schreiben.

Häufig gestellte Fragen

Was passiert, wenn das Verzeichnis der Datei nicht existiert?

Python löst einen FileNotFoundError aus. Sie müssen zuerst das Verzeichnis mit der Funktion os.makedirs erstellen, bevor Sie die Datei schreiben.

Wie schreibe ich Variablen oder Zahlen in eine Datei?

Die Methode write() akzeptiert nur String-Argumente. Sie müssen Zahlen mit str(num) umwandeln oder sie mit F-Strings formatieren.

Verwandte Themen

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.