Hallo Leute,
ich lese aus einem Textfile einen String
astring = [[8, 9, 12, 13], [0, 1], [3, 7], [5], [6], [18], [19]]
erkenntlich durch type(astring) ergibt <class 'str'>
benötige aber eine Liste die äußerlich genau so aussieht
alist = [[8, 9, 12, 13], [0, 1], [3, 7], [5], [6], [18], [19]]
aber mit type(alist) ergibt <class 'list'>.
alist = list(astring) macht eine Liste [‘[‘, ‘[‘, ‘8‘, ‘ ‘, ... usw.
Wie kann ich den String in die Liste umwandeln?
Für jede Hilfe herzlichen Dank
Strings und Listen
- pillmuncher
- User
- Beiträge: 1530
- Registriert: Samstag 21. März 2009, 22:59
- Wohnort: Pfaffenwinkel
Was du da hast ist vermutlich keine Text-Datei, sondern eine JSON-Datei. Dafür verwendet das json-Modul aus der Python Standard-Bibliothek:In dem Modul gibt es auch eine Funktion, mit der man direkt JSON-Dateien einlesen kann.
Code: Alles auswählen
>>> import json
>>> astring = "[[8, 9, 12, 13], [0, 1], [3, 7], [5], [6], [18], [19]]"
>>> alist = json.loads(astring)
>>> alist
[[8, 9, 12, 13], [0, 1], [3, 7], [5], [6], [18], [19]]
>>> type(alist)
<class 'list'>
In specifications, Murphy's Law supersedes Ohm's.
- __blackjack__
- User
- Beiträge: 14047
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Wie ist die Datei denn entstanden? Falls das tatsächlich mal eine Python-Liste mit Zahlen war, die einfach mit `str()` in eine Zeichenkette umgewandelt und dann in eine Datei geschrieben wurde, dann sollte man an der Stelle besser auch das Programm anpassen, denn die Darstellung von Python-Datenstrukturen eignet sich nur sehr bedingt zur Datenspeicherung und zum Datenaustausch. Bei Listen mit Zahlen hat man Glück, dass das JSON-Arrays und -Zahlen sehr ähnlich ist, und man die meisten Werte als JSON lesen kann, aber selbst bei Zahlen hat das Grenzen.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari