jsons = json.loads(request.data)
jsons-->
^{pr2}$以及
json_event = jsons['json_event']
json\u事件-->
dict: {u'timestamp': 1408878136.318921}
但是当我做json_event['timestamp']
我只得到小数点后两位的精度:
float: 1408878136.32
有没有办法保持精度?在
更新:
我不认为这是一个代表性问题。在
event, is_created = Event.create_or_update(json_event['event_id'],
timestamp=json_event['timestamp'])
class Event(ndb.Model):
...
timestamp = ndb.FloatProperty(required=True)
event.timestamp --> 1408878136.32
当您或任何用于打印数字的工具使用标准转换为字符串时,只会打印12个有效数字:
但是当您使用
^{pr2}$repr
内置函数时,会打印出足够的有效数字,以确保python解析器能够读回相同的值:所以只要在手动调用
repr()
中包装您正在打印的内容。在这只是代表性问题。显然,JSON打印机使用一些逻辑(可能是通过
repr
)来打印足够的数字来读回相同的值。但是你用来打印它们的工具不是。在注意,这个逻辑相当复杂,因为二进制小数与十进制小数并不完全对应。},则实际存储的数字的值将略有不同。而最接近的十进制表示则不同。因此,逻辑必须考虑它可以应用多少舍入才能仍然读回正确的值。在
0.3
具有二进制的周期性表示,因此,如果您读取{相关问题 更多 >
编程相关推荐