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: