Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Python-Dezimalobjekte präzise in JSON kodieren?
Dezimalobjekte in JSON in Python kodieren
JSON, ein allgegenwärtiges Datenaustauschformat, stößt beim Umgang mit Pythons Dezimalobjekten auf Herausforderungen. Um dieses Problem zu beheben, versuchen wir, ein Decimal('3.9')-Objekt in eine JSON-Zeichenfolge zu serialisieren, die den Originalwert genau als {'x': 3.9} darstellt.
SimpleJSON to the Rescue
Während der integrierte JSON-Encoder von Python keine Dezimalzahlen verarbeiten kann, bietet SimpleJSON, eine Bibliothek eines Drittanbieters, eine praktikable Lösung. SimpleJSON Version 2.1 und höher bietet native Unterstützung für den Decimal-Typ. Durch die Nutzung des Parameters use_decimal ermöglichen wir eine nahtlose Serialisierung.
Hier ein Beispiel:
import simplejson as json result = json.dumps(Decimal('3.9'), use_decimal=True) print(result) # Output: '3.9'
Standardmäßig ist use_decimal auf True gesetzt, sodass der folgende Befehl auch das gewünschte Ergebnis liefert:
result = json.dumps(Decimal('3.9')) print(result) # Output: '3.9'
Bemerkenswert ist, dass von SimpleJSON erwartet wird, diese Funktionalität in den Python-Standard zu integrieren Bibliothek.
Das obige ist der detaillierte Inhalt vonWie kann ich Python-Dezimalobjekte präzise in JSON kodieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!