首頁 >後端開發 >Python教學 >如何在 Python 中序列化 JSON 中的十進位物件而不丟失精確度?

如何在 Python 中序列化 JSON 中的十進位物件而不丟失精確度?

DDD
DDD原創
2024-11-24 18:18:11432瀏覽

How Can I Serialize Decimal Objects in JSON Without Losing Precision in Python?

Python JSON 中 Decimal 物件的序列化

將數位封裝為 Decimal 物件在 JSON 序列化過程中提出了挑戰。要實現 {'x': 3.9},浮點轉換是不夠的,導致 '3.8999999999999999' 不準確。

使用 SimpleJSON

SimpleJSON 2.1 及更高版本提供了具有對 Decimal 類型的本機支援的解決方案。預設情況下,啟用use_decimal,從而實現所需的序列化:

import simplejson as json

json.dumps(Decimal('3.9'))  # Output: '3.9'

敬請期待

預計此功能可能會包含在Python 標準庫中以增強JSON Decimal 物件的序列化功能。

以上是如何在 Python 中序列化 JSON 中的十進位物件而不丟失精確度?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn