Python JSON での Decimal オブジェクトのシリアル化
JSONDecoder で Decimal オブジェクトがサポートされていないため、Decimal オブジェクトを JSON にシリアル化すると課題が発生します。 Decimal オブジェクトを float に変換すると、精度が失われる可能性があります。
解決策:
サードパーティの JSON ライブラリである Simplejson は、Decimal オブジェクトをシリアル化するためのネイティブ ソリューションを提供します。 simplejson のバージョン 2.1 以降では、ダンプ関数に use_decmal パラメーターが提供されます。デフォルトでは、use_decimal は True で、精度を失うことなく Decimal オブジェクトを文字列としてシリアル化できます:
import simplejson as json decimal_object = Decimal('3.9') json_string = json.dumps(decimal_object) # Output: '3.9'
以上が精度を落とさずに Python JSON で 10 進数のオブジェクトをシリアル化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。