【发布时间】:2017-08-03 06:18:43
【问题描述】:
我正在尝试弄清楚如何使用此内容加载名为 foo.json 的文件:
[
{
"bar1": "foobar1-1",
"bar2": "foobar1-2",
"bar3": "foobar1-3"
},
{
"bar1": "foobar2-1",
"bar2": "foobar2-2",
"bar3": "foobar2-3"
}
]
我试过的代码:
with open('foo.json') as data_file:
print(data_file)
data = json.load(data_file)
print(data)
我所看到的使用 json.load 解析 json 的所有内容似乎都适用于字典内容,但这个 json 表示对象数组或字典数组。 Json.load 似乎甚至不适用于字典数组。也许我需要为此使用不同的 json 解析库。任何帮助表示赞赏。
【问题讨论】:
-
您遇到了什么问题?我不知道您所说的“json.load 中的所有内容似乎都面向字典内容”是什么意思……但是
json模块可以很好地处理任何有效的 JSON。 -
Aa 问题是 这不是有效的 JSON,因为额外的逗号。尝试将其复制粘贴到jsonlint.com 并点击验证。
-
对不起,我试图为这篇文章创建一个简化版本的 json 数据,但我不小心留下了逗号。我已经在帖子中编辑了它们。
-
好的,但现在加载正常。再次您遇到的问题究竟是什么?您只是含糊地说“Json.load 似乎甚至不适用于一系列字典。”但那绝对不是真的。
-
确实,我已将您的示例数据放入一个文件中,并使用了您的确切代码,它按预期运行...
标签: python json parsing anaconda python-collections