Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich Python-Dezimalobjekte präzise in JSON kodieren?

Wie kann ich Python-Dezimalobjekte präzise in JSON kodieren?

Barbara Streisand
Freigeben: 2024-12-03 10:23:10
Original
820 Leute haben es durchsucht

How Can I Encode Python Decimal Objects to JSON Accurately?

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'
Nach dem Login kopieren

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'
Nach dem Login kopieren

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!

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