Datenserialisierung#

Wenn die Daten flach serialisiert werden sollen, bietet Python zwei Funktionen an:

repr#

repr() gibt eine druckbare Repräsentation der Eingabe aus, z.B.:

[1]:
data = {"id": "veit", "first_name": "Veit", "last_name": "Schiele"}

print(repr(data))
{'id': 'veit', 'first_name': 'Veit', 'last_name': 'Schiele'}
[2]:
with open("data.txt", "w") as f:
    f.write(repr(data))

ast.literal_eval#

Die ast.literal_eval()-Funktion parst und analysiert den Python-Datentyp eines Ausdrucks. Unterstützte Datentypen sind Zeichenketten, Zahlen, Tupel, Listen, Dictionaries und None.

[3]:
import ast


with open("data.txt", "r") as f:
    d = ast.literal_eval(f.read())

print(d)
{'id': 'veit', 'first_name': 'Veit', 'last_name': 'Schiele'}