Ich muss mich noch einmal zurückmelden
Ich bin da jetzt etwas anders dran und möchte einfach alle Einträge aus der Datei in eine neue Liste speichern, aber ohne dass die Wörterbuchstruktur kaputt geht. Aber irgendwie blick ich da nicht ganz durch. Im Moment habe ich das hier, aber das ist eher schlecht als recht:
Code: Alles auswählen
def gespeicherte_konfiguration_lesen(einstellungsdatei):
"""Liest gespeicherte Konfigurationen aus der Einstellungsdatei
und gibt sie zurück"""
serverliste = []
konfiguration = configparser.ConfigParser()
konfiguration.read_file(open(einstellungsdatei))
konfigurationsliste = list(konfiguration.sections())
for eintrag in konfigurationsliste:
einstellungsliste = konfiguration.items(eintrag)
einstellungsliste.append(('name', eintrag))
serverliste.append(einstellungsliste)
return serverliste
Hier kriege ich dann als Ergebnis eine Liste wieder, in der die einzelnen Sektionen dann wiederum in einer Liste gespeichert sind, welche dann wieder jeweilig als Tuple die Einträge enthalten (hier im Beispiel jetzt nur ein Eintrag):
[[('host', '192.168.1.105'), ('port', '22'), ('benutzername', 'pi'), ('passwort', 'raspbian'), ('name', 'Raspberry')]]
Außerdem musste ich recht umständlich den Namen der Sektion hinten anfügen.
Wie kann ich denn recht einfach die einzelnen Sektionen aus der Konfigurationsdatei auslesen und dann in eine Liste speichern?
Das sollte dann nachher im Grunde so aussehen:
[{'host': '192.168.1.105', 'port': '22', 'benutzername': 'pi', 'passwort': 'raspbian', 'name': 'Raspberry'}, {'host': '192.168.1.106', 'port': '22', 'benutzername': 'pi', 'passwort': 'raspbian', 'name': 'Raspberry2'}]
Danke
