带前导零的python json浮点

带前导零的python json浮点,python,json,python-3.x,Python,Json,Python 3.x,如何使用python(3.5)json标准库打印尾随零的浮点 import json to_be_serialized = {'something': 0.020} print(json.dumps(to_be_serialized)) {"something": 0.02} # desired output: {"something": 0.020} 我尝试过,但不幸的是没有达到预期的效果。浮动不是用来保存此类信息的。0.020和0.02是相同的 但是,您可以手动设置小数位数: impor

如何使用python(3.5)json标准库打印尾随零的浮点

import json
to_be_serialized = {'something': 0.020}
print(json.dumps(to_be_serialized))
{"something": 0.02}  # desired output: {"something": 0.020}

我尝试过,但不幸的是没有达到预期的效果。

浮动不是用来保存此类信息的。0.020和0.02是相同的

但是,您可以手动设置小数位数:

import json
test = 0.020
print(json.dumps({'test': '{:.3f}'.format(test)}))
将打印

{"test": "0.020"}

请注意,a)这现在是一个字符串,不再是一个浮点数;b)
{.3f}
部分专门将小数位数设置为三。

最后,我被迫使用非标准python库
simplejson
。(原因
json
程序包不支持小数)


我无法用标准的
json
库找到一种方法来实现这一点,但至少它在工作。

b)对我来说没问题,a)不是:(你实际上想要实现什么?为什么需要后面的零?这些只是要求
import simplejson as json
from decimal import Decimal

to_be_serialized = {'something': Decimal('0.020').quantize(Decimal('.0001'))}
print(json.dumps(to_be_serialized))