javascript无法读取Python json转储JSON.pars文件

2024-05-15 16:35:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在python中读取通过json.dump模块生成的json文件,并使用JSON.parse在javascript中读取它。但是,对于一些json转储,javascript会抛出无效文本的异常。有人知道为什么会发生这种情况吗?或者我应该怎么做才能防止这种情况发生?在

Browsers: Chrome/Firefox; python ver: 2.7

编辑1:基于提供一些代码的注释

1)json转储使用

import json
json.dump(<python-dict>, open(<filename>,'w'), encoding='utf-8')``

2)代码读取使用

  • d3.json 输出:在调用回调之前抛出语法错误。在
  • JSON.parse 输出:无效的json

编辑2:可能有关系,json转储非常大,大约24M未压缩。在


Tags: 模块文件代码文本json编辑parse情况
2条回答

您没有关闭该文件,这可能会导致在您再次尝试读取该文件时文件不完整。在

怎么样

with open(filename, "w") as outfile:
    json.dump(myobject, outfile)

为了解决这个问题,我发现了相应的问题。在

首先,问题是:

问题不在于某些答案所暗示的not closing the file,也不是因为尺寸太大(正如我最初所想的那样)。{NAN{NAN'在^'之前被{n'所包含的错误{2}。但是,根据ECMA-262,不允许使用NAN,因此jquery json读取无法读取转储。在

解决方案:

使用simplejson并使用ignore_nan。更正的代码段应该是

import simplejson
simplejson.dump(<python-dict>, open(<filename>,'w'), encoding='utf-8', ignore_nan=True)

学分:sending NaN in json

相关问题 更多 >