Python readline()-Methode mit Beispielen

⚡ Intelligente Zusammenfassung

Python Die Methode readline liest jeweils eine einzelne Zeile aus einer Datei. Lessons-Cover-Syntax, optionales Größenargument, looping Durch Zeilen, Leistung und Vergleich mit Readlines und Iteration.

  • 📄 Lesen Sie eine Zeile: file.readline() gibt die nächste Zeile einschließlich des Zeilenumbruchzeichens am Ende zurück.
  • 📏 Größenargument: Übergeben Sie an readline ein Byte-Limit, um festzulegen, wie viel von der Zeile zurückgegeben wird.
  • 🔁 Loop-Dateien: Kombinieren Sie readline mit while-Schleifen oder iterieren Sie das Dateiobjekt für speicherschonende Lesevorgänge.
  • 📚 readline vs readlines: readline liest eine Zeile; readlines lädt alle Zeilen gleichzeitig in eine Liste.
  • ⚡ Merkhilfe: Bei sehr großen Dateien sollte man die Datei zeilenweise verarbeiten, anstatt die gesamte Datei in den Speicher zu laden.
  • 🤖 KI-Helfer: KI-Assistenten generieren Lesezeilenmuster, schlagen Kontextmanager vor und refaktorisieren I/O-Code schnell.

Python Readline-Methode

Was ist Python Zeile lesen?

Python Zeile lesen() ist eine Dateimethode, die dabei hilft, eine vollständige Zeile aus der angegebenen Datei zu lesen. Am Ende der zurückgegebenen Zeichenfolge befindet sich ein nachgestellter Zeilenumbruch („\n“).

Sie können auch den Größenparameter verwenden, um eine bestimmte Länge der Linie zu erhalten. Der Größenparameter ist optional und standardmäßig wird die gesamte Zeile zurückgegeben.

Der Ablauf von readline() ist im folgenden Screenshot gut zu verstehen:

Sie haben eine Datei demo.txt, und wenn readline() verwendet wird, wird die allererste Zeile von demo.txt zurückgegeben.


Python readline
So funktioniert readline

Charakteristisch für Python Zeile lesen()

Hier sind wichtige Merkmale von Python Zeile lesen:

  • Python Die Methode readline() liest nur eine vollständige Zeile aus der angegebenen Datei.
  • Am Ende der Zeile wird ein Zeilenumbruch („\n“) angehängt.
  • Wenn Sie die Datei im normalen Lesemodus öffnen, gibt Ihnen readline() die Zeichenfolge zurück.
  • Wenn Sie die Datei im Binärmodus öffnen, gibt readline() Ihr Binärobjekt zurück.
  • Sie können readline() die Größe als Argument angeben und erhalten dann die Zeile entsprechend der angegebenen Größe, einschließlich der neuen Zeile. Standardmäßig ist die Größe 0 und es wird die gesamte Zeile zurückgegeben.

Syntax

file.readline(size)

Kenngrößen

Größe: (optional) Hier können Sie die Zahl angeben, einen ganzzahligen Wert für readline(). Es wird die Zeichenfolge dieser Größe erhalten. Standardmäßig ist der Wert von size -1 und daher wird die gesamte Zeichenfolge zurückgegeben.

Rückgabewert

Die Methode readline() gibt die Zeile aus der angegebenen Datei zurück.

Beispiel: Um die erste Zeile mit readline() zu lesen

Hier erfahren Sie, wie Sie mit der Methode readline() die Zeile aus der angegebenen Datei lesen. Wir werden hier die Datei demo.txt verwenden, um den Inhalt zu lesen.

Der Dateiinhalt von demo.txt ist wie folgt:

demo.txt

Testing - FirstLine
Testing - SecondLine
Testing - Third Line
Testing - Fourth Line
Testing - Fifth Line

Im Folgenden finden Sie die Schritte zum Lesen einer Zeile aus der Datei demo.txt.

Schritt 1) Öffnen Sie zunächst die Datei mit der Methode file open(), wie unten gezeigt:

myfile = open("demo.txt", "r")

Die open()-Methode verwendet den ersten Parameter als Namen der Datei und den zweiten Parameter für den Modus, in dem Sie sie öffnen möchten. Im Moment haben wir „r“ verwendet, was bedeutet, dass die Datei im Lesemodus geöffnet wird.

Schritt 2) Verwenden Sie die Methode readline(), um die Zeile aus der Datei demo.txt wie unten gezeigt zu lesen:

myline = myfile.readline()

Schritt 3) Die gelesene Zeile wird in myline gespeichert. Lassen Sie uns nun die Zeile drucken, um die Details anzuzeigen:

print(myline)

Schritt 4) Sobald der Lesevorgang abgeschlossen ist, schließen Sie die Datei mit der Methode close() wie unten gezeigt:

myfile.close()

Der gesamte Code lautet wie folgt:

myfile = open("demo.txt", "r")
myline = myfile.readline()
print(myline)
myfile.close()

Ausgang:

Testing - FirstLine

Beispiel: Verwendung des Größenarguments in readline()

Wir haben gesehen, wie man die gesamte Zeile aus der angegebenen Datei liest. Sie können auch den Größenparameter verwenden, um nur die erforderliche Länge der Linie zu erhalten.

Im angegebenen Beispiel ist der Größenparameter mit 10 angegeben. Die erste Zeile wird abgerufen und die Zeile mit den Zeichen von 0 bis 10 zurückgegeben.

Wir werden die zuvor verwendete Datei demo.txt verwenden. Speichern Sie die Datei demo.txt und verwenden Sie den Speicherort der demo.txt in der Funktion open().

myfile = open("demo.txt", "r")
myline = myfile.readline(10)
print(myline)
myfile.close()

Ausgang:

Testing -

Grundlegende Datei-E/A in Python

Die grundlegende Datei-E/A in Python Um eine Datei zum Lesen oder Schreiben zu öffnen, ist die integrierte Funktion open() erforderlich. Die beiden wichtigen Argumente, die in die Funktion open() eingehen, sind der Dateipfad, der eine Zeichenfolge ist, und der Modus, der angibt, ob die Datei zum Lesen oder Schreiben bestimmt ist. Das Modusargument ist eine Zeichenfolge.

Syntax:

open("file path", "mode")

Im Folgenden sind die verfügbaren Modi aufgeführt, die mit der Methode open() verwendet werden können:

Model Beschreibung
R Dadurch wird die Datei im Lesemodus geöffnet().
W Mit w können Sie in die Datei schreiben.
a Wenn Sie a mit open() verwenden, wird die Datei im Schreibmodus geöffnet und der Inhalt wird am Ende angehängt.
rb Der RB-Modus öffnet die Datei zum Lesen von Binärdaten.
wb Der wb-Modus öffnet die Datei zum Schreiben von Binärdaten.

Da wir die Datei zum Lesen benötigen, verwenden wir den Lesemodus, also (r).

Lesen Sie eine Datei Zeile für Zeile in Python

Die Methode readline() hilft dabei, jeweils nur eine Zeile zu lesen, und gibt die erste Zeile aus der angegebenen Datei zurück.

Hier verwenden wir readline(), um alle Zeilen aus der angegebenen Datei zu lesen. Die Datei, die gelesen wird, ist demo.txt. Der Inhalt der Datei ist:

Speichern Sie die Datei demo.txt und verwenden Sie den Speicherort von demo.txt in der Funktion open().

Testing - FirstLine
Testing - SecondLine
Testing - Third Line
Testing - Fourth Line
Testing - Fifth Line

Durch die Verwendung von readline() innerhalb der While-Schleife werden alle in der Datei demo.txt vorhandenen Zeilen gelesen.

myfile = open("demo.txt", "r")
myline = myfile.readline()
while myline:
    print(myline)
    myline = myfile.readline()
myfile.close()   

Ausgang:

Testing - FirstLine
Testing - SecondLine
Testing - Third Line
Testing - Fourth Line
Testing - Fifth Line

Wie lese ich alle Zeilen einer Datei auf einmal?

Um alle Zeilen einer Datei zu lesen, können Sie Folgendes verwenden: Python readlines() Funktion. Die Besonderheit von Python Die Funktion readlines() dient dazu, den gesamten Inhalt der angegebenen Datei zu lesen und die Ausgabe in einer Liste zu speichern.

Die Funktion readlines() liest bis zum Ende der Datei, nutzt dabei intern die Funktion readline() und gibt eine Liste mit allen aus der Datei gelesenen Zeilen zurück.

Hier ist ein funktionierendes Beispiel zum Lesen aller Zeilen aus der Datei mit readlines().

Die Datei, die wir zum Lesen verwenden werden, ist test.txt. Der Inhalt der Datei test.txt lautet wie folgt:

test.txt: Speichern Sie die Datei test.txt und verwenden Sie den Speicherort von test.txt in der Funktion open().

Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
myfile = open("test.txt", "r")
mylist = myfile.readlines()
print(mylist)
myfile.close()

Ausgang:

['Line No 1\n', 'Line No 2\n', 'Line No 3\n', 'Line No 4\n', 'Line No 5']

Wie lese ich eine Datei Zeile für Zeile mit einer for-Schleife?

Im Folgenden sind die Schritte zum zeilenweisen Lesen einer bestimmten Datei mithilfe einer For-Schleife aufgeführt:

Schritt 1) Öffnen Sie zunächst die Datei mit Python open()-Funktion im Lesemodus.

Schritt 2) Die Funktion open() gibt einen Dateihandler zurück. Verwenden Sie den Dateihandler in Ihrer for-Schleife und lesen Sie alle Zeilen aus der angegebenen Datei Zeile für Zeile.

Schritt 3) Wenn Sie fertig sind, schließen Sie den Dateihandler mit der Funktion close().

Hier ist ein funktionierendes Beispiel für die Verwendung einer for-Schleife zum zeilenweisen Lesen einer bestimmten Datei. Die Datei, die wir hier verwenden werden, ist test.txt.

Der Inhalt von test.txt ist wie folgt. Speichern Sie die Datei test.txt und verwenden Sie den Speicherort von test.txt in einer open()-Funktion.

Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
myfile = open("test.txt", "r")
for line in myfile:
    print(line)
myfile.close()   

Ausgang:

Line No 1
Line No 2
Line No 3
Line No 4
Line No 5

Wie lese ich eine Datei Zeile für Zeile mit einer While-Schleife?

Sie können eine While-Schleife verwenden und den Inhalt der angegebenen Datei Zeile für Zeile lesen. Öffnen Sie dazu zunächst die Datei im Lesemodus mit der Funktion open(). Der von open() zurückgegebene Dateihandler, verwenden Sie ihn darin while-Schleife um die Zeilen zu lesen.

Python Die Funktion readline() wird innerhalb einer while-Schleife verwendet, um die Zeilen zu lesen. Bei einer for-Schleife wird die Schleife beendet, wenn das Ende der Datei erreicht ist. Bei einer while-Schleife ist das jedoch nicht der Fall, und Sie müssen überprüfen, ob die Datei fertig gelesen wurde. Wenn die Funktion readline() also eine leere Zeichenfolge zurückgibt, können Sie die break-Anweisung verwenden, um die while-Schleife zu beenden.

Hier ist ein funktionierendes Beispiel zum zeilenweisen Lesen einer Datei mithilfe einer While-Schleife.

Die Datei, die wir verwenden werden, ist test.txt. Speichern Sie die Datei test.txt und verwenden Sie den Speicherort von test.txt in der Funktion open().

Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
myfile = open("test.txt", "r")
while myfile:
    line  = myfile.readline()
    print(line)
    if line == "":
        break
myfile.close() 

Ausgang:

Line No 1
Line No 2
Line No 3
Line No 4
Line No 5

Häufig gestellte Fragen

Es gibt eine leere Zeichenkette zurück. Looping Die Schleife while line := f.readline() stoppt sauber, wenn der Lesevorgang eine leere Zeichenkette zurückgibt und somit das Dateiende signalisiert.

Ja. KI-Assistenten wie Copilot schlagen with-Anweisungen vor, ersetzen Lesezeilen durch Iterationen und erkennen nicht geschlossene Dateien. Sie erklären Kodierungsprobleme und empfehlen asynchrone Ein-/Ausgabe für große Dateien.

KI-Tools interpretieren FileNotFoundError, PermissionError und UnicodeDecodeError und schlagen dann Lösungen wie explizite Kodierungen, absolute Pfade oder Kontextmanager vor.

readline liest jeweils eine Zeile und gibt eine Zeichenkette zurück. readlines liest alle Zeilen auf einmal und gibt eine Liste von Zeichenketten zurück, was bei großen Dateien mehr Speicherplatz benötigt.

Es begrenzt die Anzahl der aus der Zeile gelesenen Bytes. Die Funktion stoppt weiterhin bei einem Zeilenumbruch, falls dieser vor Erreichen des Byte-Limits auftritt.

Verwenden Sie for line in file: anstatt readlines. Python streamt die Datei verzögert, keeping Geringer Speicherverbrauch selbst bei mehreren Gigabyte großen Protokolldateien.

Ja. Die with-Anweisung garantiert, dass die Datei auch im Fehlerfall geschlossen wird, wodurch Ressourcenlecks und die Beschädigung von Schreibvorgängen verhindert werden.

Übergeben Sie das Argument „encoding“: open('file.txt', encoding='utf-8′). Ohne dieses Argument… Python verwendet die Plattformstandardeinstellung, was bei Nicht-ASCII-Inhalten zu einem UnicodeDecodeError führt.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: