Python JSON 中的 Decimal 对象序列化
由于 JSONDecoder 中缺乏对 Decimal 对象的支持,将 Decimal 对象序列化为 JSON 是一个挑战。将 Decimal 对象转换为浮点数可能会导致精度损失。
解决方案:
第三方 JSON 库 Simplejson 提供了用于序列化 Decimal 对象的本机解决方案。 simplejson 2.1 及更高版本在 dumps 函数中提供了 use_decimal 参数。默认情况下,use_decimal 为 True,允许 Decimal 对象序列化为字符串而不损失精度:
import simplejson as json decimal_object = Decimal('3.9') json_string = json.dumps(decimal_object) # Output: '3.9'
以上是如何在不损失精度的情况下序列化 Python JSON 中的十进制对象?的详细内容。更多信息请关注PHP中文网其他相关文章!