Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich Fehler „datetime.datetime not JSON serializable' in Python behandeln?

Wie kann ich Fehler „datetime.datetime not JSON serializable' in Python behandeln?

Linda Hamilton
Freigeben: 2024-12-08 17:25:11
Original
1031 Leute haben es durchsucht

How Can I Handle

JSON-Serialisierung von Datetime-Objekten

Das Auftreten des Fehlers „datetime.datetime not JSON serializable“ beim Versuch, Wörterbücher, die Datetime-Objekte enthalten, in JSON umzuwandeln, hebt das hervor müssen die JSON-Serialisierungsbeschränkungen des Datetime-Typs von Python berücksichtigen. Um dieses Problem effektiv anzugehen, wird die folgende Lösung vorgeschlagen:

Ein anpassbarer JSON-Serialisierungsansatz ermöglicht die Konvertierung nicht serialisierbarer Objekte wie Datum/Uhrzeit in JSON-kompatible Formate. Durch die Verwendung des Standardparameters in json.dumps() können Sie eine Funktion definieren, die die Konvertierung von Datetime-Objekten übernimmt.

Zum Beispiel kann eine einfache Standardfunktion, die Datetime-Objekte in Strings konvertiert, wie folgt implementiert werden:

def convert_datetime(o):
    if isinstance(o, datetime):
        return str(o)
    return o
Nach dem Login kopieren

Indem Sie diese Funktion als Standardargument an json.dumps() übergeben, können Sie sicherstellen, dass Datetime-Objekte in Zeichenfolgen konvertiert und serialisiert werden erfolgreich:

json.dumps(sample, indent=4, sort_keys=True, default=convert_datetime)
Nach dem Login kopieren

Dieser Ansatz bietet eine flexible und anpassbare Lösung für die Serialisierung komplexer Datenstrukturen, einschließlich solcher, die Datums-/Uhrzeitobjekte enthalten, in das JSON-Format.

Das obige ist der detaillierte Inhalt vonWie kann ich Fehler „datetime.datetime not JSON serializable' in Python behandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage