如题,如何正确生成json文件?
可以在命令行上做到这一点:
cat some.json | python -m json.tool
(正如在问题的评论中已经提到的那样)。
实际上python并不是最喜欢的工具,只要在命令行上执行json处理就可以了。如果你想操纵JSON,可能会变得过于复杂。
用jq。以上可以做到:
cat some.json | jq ''
该json模块已经实现了与一些基本相当的打印indent参数:
>>> import json
>>>
>>> your_json = '["foo", {"bar":["baz", null, 1.0, 2]}]'
>>> parsed = json.loads(your_json)
>>> print json.dumps(parsed, indent=4, sort_keys=True)
[
"foo",
{
"bar": [
"baz",
null,
1.0,
2
]
}
]
要解析文件,请使用json.load:
with open('filename.txt', 'r') as handle:
parsed = json.load(handle)