So lesen Sie TXT-Dateien in Python: 1. Verwenden Sie die Funktion read(), um den Inhalt der TXT-Datei Byte für Byte oder Zeichen zu lesen. 2. Verwenden Sie die Funktion readline(), um den Inhalt der TXT-Datei Zeile für Zeile zu lesen line; 3. Verwenden Sie die Funktion readlines(), um mehrere Zeilen Inhalt in einer TXT-Datei gleichzeitig zu lesen.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, Python-Version 3.7, DELL G3-Computer
Python bietet die folgenden drei Funktionen, die uns alle dabei helfen können, den Vorgang des Lesens von Daten in Dateien zu realisieren:
read()-Funktion: Lesen Sie den Inhalt der Datei Byte oder Zeichen für Byte;
readline()-Funktion: Lesen Sie den Inhalt der Datei Zeile für Zeile;
readlines()-Funktion: Lesen Sie die Datei auf einmal Mehrere Zeilen Inhalt.
Python read()-Funktion
Für Dateien, die im lesbaren Modus (einschließlich r, r+, rb, rb+) mit Hilfe der open()-Funktion geöffnet wurden, können Sie das Funktionsbyte read() aufrufen byteweise (oder zeichenweise) liest den Inhalt der Datei.
Wenn die Datei im Textmodus (nicht im Binärmodus) geöffnet wird, liest die Funktion read() Zeichen für Zeichen. Wenn die Datei hingegen im Binärmodus geöffnet wird, liest die Funktion read() Byte für Byte. Das grundlegende Syntaxformat der Funktion
read() lautet wie folgt:
file.read([size])
wobei „Datei“ das geöffnete Dateiobjekt darstellt; Größe ist ein optionaler Parameter, der verwendet wird, um die maximale Anzahl von Zeichen (Bytes) anzugeben, die gelesen werden können einmal, wenn Wenn es weggelassen wird, wird standardmäßig alles auf einmal gelesen.
Erstellen Sie beispielsweise zunächst eine Textdatei namens my_file.txt mit dem Inhalt:
Python教程 https://www.php.cn/course/list/30.html
Erstellen Sie dann eine file.py-Datei im selben Verzeichnis wie my_file.txt und schreiben Sie die folgende Anweisung:
#以 utf-8 的编码格式打开指定文件 f = open("my_file.txt",encoding = "utf-8") #输出读取到的数据 print(f.read()) #关闭文件 f.close()
Das Ergebnis der Programmausführung ist :
Python教程 https://www.php.cn/course/list/30.html
Beachten Sie, dass nach Abschluss des Dateivorgangs die Funktion close() aufgerufen werden muss, um die geöffnete Datei manuell zu schließen, um unnötige Fehler im Programm zu vermeiden.
Natürlich können wir auch die maximale Anzahl von Zeichen (oder Bytes) angeben, die read() jedes Mal lesen kann, indem wir den Größenparameter verwenden, zum Beispiel:
#以 utf-8 的编码格式打开指定文件 f = open("my_file.txt",encoding = "utf-8") #输出读取到的数据 print(f.read(6)) #关闭文件 f.close()
Das Ergebnis der Programmausführung ist:
Python
Offensichtlich, In diesem Programm liest die Funktion read() nur die ersten 6 Zeichen der Datei my_file.
Die Größe stellt wiederum die maximale Anzahl von Zeichen (oder Bytes) dar, die gleichzeitig gelesen werden können. Selbst wenn die eingestellte Größe größer ist als die Anzahl der in der Datei gespeicherten Zeichen (Bytes), funktioniert read(). Die Funktion meldet keinen Fehler, sondern liest nur alle Daten in der Datei.
Zusätzlich liest die Funktion read() bei Dateien, die im Binärformat geöffnet sind, den Inhalt der Datei Byte für Byte. Zum Beispiel:
#以二进制形式打开指定文件 f = open("my_file.txt",'rb+') #输出读取到的数据 print(f.read()) #关闭文件 f.close()
Das Ergebnis der Programmausführung ist:
b'Python\xe6\x95\x99\xe7\xa8\x8b\r\nhttps://www.php.cn/course/list/30.html'
Sie können sehen, dass die Ausgabedaten eine Byte-Byte-Zeichenfolge sind. Wir können die Methode decode() aufrufen, um sie in eine uns bekannte Zeichenfolge umzuwandeln.
Python readline()-Funktion
readline()-Funktion wird verwendet, um eine Zeile in der Datei zu lesen, einschließlich des letzten Zeilenumbruchzeichens „n“. Das grundlegende Syntaxformat dieser Funktion ist:
file.readline([size])
wobei Datei das geöffnete Dateiobjekt ist; Größe ist ein optionaler Parameter, der verwendet wird, um die maximale Anzahl von Zeichen (Bytes) anzugeben, die beim Lesen jeder Zeile gleichzeitig gelesen werden.
Wie bei der Funktion read() besteht die Voraussetzung dafür, dass diese Funktion Dateidaten erfolgreich lesen kann, darin, dass der von der Funktion open() zum Öffnen der Datei angegebene Modus ein lesbarer Modus sein muss (einschließlich r, rb, r+, rb+).
Das folgende Programm demonstriert die spezifische Verwendung der Funktion readline():
f = open("my_file.txt") #读取一行数据 byt = f.readline() print(byt)
Das Ergebnis der Programmausführung ist:
Python教程
Wenn die Funktion readline() den Inhalt einer Zeile in der Datei liest, wird die letzte neue Zeile gelesen Das Zeichen „n“ und die Funktion print() umbrechen den Ausgabeinhalt standardmäßig, sodass im Ausgabeergebnis eine zusätzliche Leerzeile angezeigt wird.
Darüber hinaus können Sie beim zeilenweisen Lesen auch die maximale Anzahl der Zeichen (Bytes) begrenzen, die gelesen werden können, zum Beispiel:
#以二进制形式打开指定文件 f = open("my_file.txt",'rb') byt = f.readline(6) print(byt)
Das laufende Ergebnis lautet:
b'Python'
Verglichen mit dem Ausgabeergebnis des Im vorherigen Beispiel wurde eine Datenzeile hier nicht vollständig gelesen, daher wird das Zeilenumbruchzeichen nicht gelesen.
Python readlines()-Funktion
readlines()-Funktion wird zum Lesen aller Zeilen in der Datei verwendet. Sie ähnelt dem Aufruf der read()-Funktion ohne Angabe des Größenparameters, außer dass die Funktion eine Zeichenfolge zurückgibt Eine Liste, in der jedes Element eine Zeile in der Datei darstellt.
Wie bei der Funktion readline() gilt: Wenn die Funktion readlines() jede Zeile liest, liest sie diese zusammen mit dem Zeilenumbruchzeichen am Ende der Zeile. Das grundlegende Syntaxformat der Funktion
readlines() lautet wie folgt:
file.readlines()
wobei Datei das geöffnete Dateiobjekt ist. Wie die Funktionen read() und readline() erfordert sie, dass der Modus zum Öffnen der Datei der lesbare Modus sein muss (einschließlich r, rb, r+, rb+).
Zum Beispiel:
f = open("my_file.txt",'rb') byt = f.readlines() print(byt)
Das laufende Ergebnis ist:
[b'Python\xbd\xcc\xb3\xcc\r\n', b'https://www.php.cn/course/list/30.html']
[Verwandte Empfehlungen: Python3-Video-Tutorial]
Das obige ist der detaillierte Inhalt vonSo lesen Sie den Inhalt einer TXT-Datei in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!