我正在使用python' json
生成一个json文件,无法按照我想要的方式设置它。
我所拥有的是带有一些键的字典,每个键都附有一个数字列表:
out = {"a": [1,2,3], "b": [4,5,6]}
我想要做的是生成一个JSON字符串,其中每个列表都在它自己的行中,如下所示:
{
"a": [1,2,3],
"b": [4,5,6]
}
然而,我只能得到
>>> json.dumps(out)
'{"a": [1, 2, 3], "b": [4, 5, 6]}'
没有新行,或
>>> print json.dumps(out, indent=2)
{
"a": [
1,
2,
3
],
"b": [
4,
5,
6
]
}
很多人都喜欢这个。有没有一种简单的方法来生产我想要的字符串?当然,我可以手动完成,但我想知道单独使用json
是否可行......
答案 0 :(得分:1)
你不能用json
模块做到这一点,没有。模块的目标永远不是允许对输出进行这么大的控制。
indent
选项仅用于帮助调试。 JSON解析器并不关心元素之间使用了多少空格。