我目前正致力于从python 2.7到python 3.6
有效的Python 2.7代码
json.dump(data, ignore_nan=True)
Python 3.6代码
json.dumps(charts, allow_nan=False)
错误消息:
{ValueError}Out of range float values are not JSON complaint
我应该如何忽略nan值来转储信息?
示例:
"series": [
{
"data": [
{
"value": 60.6,
"x": 1538431200000.0
},
{
"value": 80.6,
"x": 1538434800000.0
},
答案 0 :(得分:0)
allow_nan=True
应该可以解决问题。我对allow_nan选项没有任何问题。
>>> a = [{"k": 1, "v": float('nan')}, {"k": 2, "v": float('inf')}]
>>> a
[{'k': 1, 'v': nan}, {'k': 2, 'v': inf}]
>>> import json
>>> json.dumps(a)
'[{"k": 1, "v": NaN}, {"k": 2, "v": Infinity}]'
>>> import sys
>>> print (sys.version)
3.6.6 (default, Jul 19 2018, 14:25:17)
[GCC 8.1.1 20180712 (Red Hat 8.1.1-5)]
答案 1 :(得分:0)
尝试了许多事情后,其工作原理如下:
import simplejson
simplejson.dumps(data, ignore_nan=True)