Zum Hauptinhalt springen

Konvertieren einer Tabelle aus einer Textdatei in ein Wörterbuch in Python

In diesem Tutorial lernen wir, wie man eine in einer Textdatei gespeicherte Tabelle mithilfe von Python in ein Wörterbuch umwandelt.

Schritt 1: Die Textdatei lesen

Zunächst müssen wir den Inhalt der Textdatei lesen. Wir können die Funktion open() verwenden, um die Datei zu öffnen, und die Methode readlines() verwenden, um alle Zeilen in der Datei zu lesen.

with open('tabelle.txt', 'r') as datei:
zeilen = datei.readlines()

Stelle sicher, dass du 'tabelle.txt' durch den Pfad zu deiner tatsächlichen Textdatei ersetzt.

Schritt 2: Die Überschriften extrahieren

Die erste Zeile der Textdatei enthält normalerweise die Überschriften oder Spaltennamen der Tabelle. Wir können diese Zeile mithilfe des entsprechenden Trennzeichens (z. B. Komma, Tabulator usw.) aufteilen, um einzelne Überschriften zu erhalten.

ueberschriften = zeilen[0].strip().split('\t')

In diesem Beispiel gehen wir davon aus, dass die Überschriften durch Tabs (\t) getrennt sind. Passe den Code entsprechend an, wenn deine Tabelle ein anderes Trennzeichen verwendet.

Schritt 3: Die Datenzeilen verarbeiten

Die verbleibenden Zeilen in der Textdatei enthalten die Datenzeilen der Tabelle. Wir können über diese Zeilen iterieren und sie mithilfe desselben Trennzeichens wie bei den Überschriften aufteilen. Anschließend können wir für jede Zeile ein Wörterbuch erstellen, wobei die Schlüssel die Überschriften und die Werte die entsprechenden Werte in dieser Zeile sind.

daten = []
for zeile in zeilen[1:]:
werte = zeile.strip().split('\t')
row = dict(zip(ueberschriften, werte))
daten.append(row)

Die Funktion zip() wird verwendet, um jede Überschrift mit ihrem entsprechenden Wert in der Zeile zu kombinieren.

Schritt 4: Auf das Wörterbuch zugreifen

Sobald die Konvertierung abgeschlossen ist, können wir auf die Daten im Wörterbuch mithilfe der Überschriften als Schlüssel zugreifen. Zum Beispiel können wir den Wert einer bestimmten Zelle abrufen, indem wir die folgende Syntax verwenden:

wert = daten[zeilen_index][ueberschrift_name]

Ersetze zeilen_index durch den Index der gewünschten Zeile (beginnend bei 0) und ueberschrift_name durch den Namen der Überschrift, auf die du zugreifen möchtest.

Vollständiges Beispiel

Hier ist ein vollständiges Beispiel, das alle Schritte kombiniert:

with open('tabelle.txt', 'r') as datei:
zeilen = datei.readlines()

ueberschriften = zeilen[0].strip().split('\t')

daten = []
for zeile in zeilen[1:]:
werte = zeile.strip().split('\t')
row = dict(zip(ueberschriften, werte))
daten.append(row)

# Auf das Wörterbuch zugreifen
wert = daten[0]['ueberschrift_name']

Ersetze 'tabelle.txt' durch den Pfad zu deiner tatsächlichen Textdatei und 'ueberschrift_name' durch die spezifische Überschrift, auf die du zugreifen möchtest.

Das war's! Du hast erfolgreich eine Tabelle aus einer Textdatei in ein Wörterbuch mithilfe von Python konvertiert. Fühle dich frei, den Code entsprechend deinen spezifischen Anforderungen anzupassen.