So lesen und schreiben Sie Dateien in Python

Das Lesen und Schreiben aus Dateien ist eine gängige Aufgabe beim Programmieren, und Python macht es mit seinen integrierten Dateiverwaltungsfunktionen einfach. Das Verständnis für die Arbeit mit Dateien ist für jeden Python-Programmierer unerlässlich, da Sie damit Datenspeicherung, Protokollierung, Konfigurationsverwaltung und mehr handhaben können. In diesem Handbuch erfahren Sie, wie Sie Dateien in Python öffnen, lesen, schreiben und schließen und wie Sie mit verschiedenen Dateimodi umgehen.

Öffnen und Schließen von Dateien

In Python verwenden Sie die Funktion open(), um eine Datei zu öffnen. Die Funktion open() gibt ein Dateiobjekt zurück, das Methoden zum Lesen und Schreiben bereitstellt. Es ist wichtig, eine Datei nach der Verwendung mit der Methode close() zu schließen, um Systemressourcen freizugeben.

# Opening and closing a file
file = open("example.txt", "r")  # Open file for reading
# Perform file operations
file.close()  # Close the file

Dateien lesen

Es gibt je nach Bedarf mehrere Möglichkeiten, den Inhalt einer Datei in Python zu lesen:

Lesen Sie die gesamte Datei

Die Methode read() liest den gesamten Inhalt der Datei in einen einzigen String.

# Reading the entire file
with open("example.txt", "r") as file:
    content = file.read()
    print(content)

Zeilen einer Datei lesen

Die Methode readline() liest eine Zeile aus der Datei, während readlines() alle Zeilen liest und sie als Liste zurückgibt.

# Reading lines using readline()
with open("example.txt", "r") as file:
    line = file.readline()
    while line:
        print(line.strip())
        line = file.readline()

# Reading all lines using readlines()
with open("example.txt", "r") as file:
    lines = file.readlines()
    for line in lines:
        print(line.strip())

Zeilenweises Lesen von Dateien

Die bevorzugte Methode zum zeilenweisen Lesen einer Datei ist die Verwendung einer for-Schleife direkt auf dem Dateiobjekt. Dieser Ansatz ist speichereffizient, insbesondere bei großen Dateien.

# Reading file line by line using a for loop
with open("example.txt", "r") as file:
    for line in file:
        print(line.strip())

Schreiben in Dateien

Python ermöglicht Ihnen das Schreiben in Dateien mit den Methoden write() und writelines(). Sie müssen die Datei in einem Modus öffnen, der das Schreiben unterstützt, wie z. B. 'w' (Schreiben) oder 'a' (Anhängen).

Schreiben in eine Datei

Die Methode write() schreibt einen einzelnen String in eine Datei. Das Öffnen einer Datei im Schreibmodus 'w' erstellt eine neue Datei oder überschreibt eine vorhandene Datei.

# Writing to a file
with open("output.txt", "w") as file:
    file.write("Hello, World!\n")
    file.write("This is a new line.")

An eine Datei anhängen

Wenn Sie eine Datei im Anfügemodus 'a' öffnen, können Sie Inhalt an das Ende einer vorhandenen Datei hinzufügen, ohne deren Inhalt zu überschreiben.

# Appending to a file
with open("output.txt", "a") as file:
    file.write("\nThis line is appended.")

Mehrere Zeilen schreiben

Die Methode writelines() wird verwendet, um mehrere Zeilen in eine Datei zu schreiben. Sie erwartet eine Liste von Zeichenfolgen, von denen jede eine Zeile darstellt.

# Writing multiple lines to a file
lines = ["Line 1\n", "Line 2\n", "Line 3\n"]
with open("output.txt", "w") as file:
    file.writelines(lines)

Dateimodi

Die Python-Funktion open() unterstützt mehrere Modi zum Öffnen von Dateien:

  • 'r' - Lesemodus (Standard). Öffnet eine Datei zum Lesen.
  • 'w' - Schreibmodus. Öffnet eine Datei zum Schreiben (erstellt eine neue Datei oder kürzt eine vorhandene Datei).
  • 'a' - Anhängemodus. Öffnet eine Datei zum Anhängen (erstellt eine neue Datei, wenn sie nicht vorhanden ist).
  • 'r+' - Lese- und Schreibmodus. Öffnet eine Datei sowohl zum Lesen als auch zum Schreiben.
  • 'b' - Binärmodus. Öffnet eine Datei im Binärmodus (wird mit 'rb', 'wb' usw. verwendet).

Abschluss

Das Lesen und Schreiben in Dateien in Python ist unkompliziert, wenn Sie die grundlegenden Konzepte und Dateimodi verstanden haben. Wenn Sie die Dateiverwaltung beherrschen, können Sie Daten effizient verwalten, Benutzereingaben/-ausgaben verarbeiten und Aufgaben automatisieren, die Dateioperationen beinhalten. Üben Sie die Verwendung dieser Techniken, um die Dateiverwaltung in Python zu beherrschen.