Einlesen einer Textdatei in eine Liste in Python

Muhammad Waiz Khan 10 Oktober 2023
  1. Lesen einer Textdatei in eine Liste in Python unter Verwendung von read().split() auf das von der Funktion open() zurückgegebene Dateiobjekt
  2. Einlesen einer Textdatei in eine Liste in Python mit der Funktion loadtxt der Bibliothek NumPy
  3. Lesen einer Textdatei in eine Liste in Python mit der Funktion csv.reader()
Einlesen einer Textdatei in eine Liste in Python

In diesem Tutorial werden mehrere Methoden zum Laden oder Lesen einer Textdatei in eine Python-Liste betrachtet. Es beinhaltet die Verwendung der Funktion read().split() auf das von der Funktion open() zurückgegebene Dateiobjekt, die Funktion loadtxt der Bibliothek NumPy und die Funktion csv.reader, um eine Textdatei zu laden und in einzelne Elemente der Liste aufzuteilen.

Lesen einer Textdatei in eine Liste in Python unter Verwendung von read().split() auf das von der Funktion open() zurückgegebene Dateiobjekt

Das folgende Code-Beispiel zeigt, wie wir eine Textdatei zunächst mit open lesen und dann mit der Funktion read().split() in ein Array aufteilen können, wobei , als Trennzeichen dient.

Angenommen, der Inhalt der Textdatei file.txt ist unten.

1,2,321,355,313

Code:

with open("file.txt", "r") as tf:
    lines = tf.read().split(",")

for line in lines:
    print(line)

Ausgabe:

1
2
321
355
313

Das Argument in der Funktion split(), im Beispiel ,, gibt das Trennzeichen in der Textdatei an.

Einlesen einer Textdatei in eine Liste in Python mit der Funktion loadtxt der Bibliothek NumPy

Das folgende Codebeispiel zeigt, wie wir die Funktion loadtxt der Bibliothek NumPy verwenden können, um die Textdatei zu laden und mit dem Parameter delimiter in ein Array aufzuteilen.

from numpy import loadtxt

lines = loadtxt("file.txt", delimiter=",")
for line in lines:
    print(line)

Ausgabe:

1.0
2.0
321.0
355.0
313.0

Lesen einer Textdatei in eine Liste in Python mit der Funktion csv.reader()

Das Modul csv wird typischerweise zur Verarbeitung der CSV-Datei verwendet, könnte aber auch zur Verarbeitung der Textdatei verwendet werden.

Die Funktion reader des csv-Moduls liest die angegebene Datei und gibt ein _csv.reader-Objekt zurück. Wir können das _csv.reader-Objekt in eine Liste umwandeln, indem wir die Funktion list() anwenden.

Beachten Sie, dass die konvertierte Liste ein 2D-Array ist, auch wenn die Datei nur eine Zeile hat; deshalb müssen wir die 1D-Liste mit dem Index [0] holen.

import csv

with open("file.txt") as f:
    line = csv.reader(f, delimiter=",")

print(list(line)[0])

Ausgabe:

['1', '2', '321', '355', '313']

Verwandter Artikel - Python List

Verwandter Artikel - Python File