Das json-Modul behandelt nur eine feste Menge an Python-Typen. Um komplexe Zahlen, Datumsangaben, Pfade oder benutzerdefinierte Klassen zu serialisieren, müssen Sie eine default-Funktion bereitstellen oder JSONEncoder unterklassifizieren und dann die Ausgabe mit object_hook auf der Dekodierseite kombinieren.
json / serialization / JSONEncoder / default / object_hook / python-standard-library / datetime / complex
Verwenden Sie ISO-Zeitstempel-Strings und Dezimal-Strings, dann rekonstruieren Sie die Felder explizit. Ein vollständiges Beispiel der Standardbibliothek zeigt Zeitzonenprüfungen, Genauigkeit und vorhersehbare Fehler.
JSON / Serialization / Deserialization / Datetime / Decimal / Python / Data Contract / Type Handling
Erfahren Sie, wie Sie JSON-Daten in Python sowohl aus String-Literalen als auch aus Dateien parsen und wie Sie potenzielle Dekodierungsfehler mit dem integrierten json-Modul effektiv behandeln.
python / json / parsing / decoding / file handling / error handling / pathlib / data serialization