python:在将json写入文件时,如何将数组的一行保持在一行中
我有一个dictionary对象,其内容是:python:在将json写入文件时,如何将数组的一行保持在一行中,python,json,Python,Json,我有一个dictionary对象,其内容是: { "A" : { "B" : { "C" : [ [ 1000.00000000, 1000.00000000, 1000.00000000 ], [ 1000.00000000, 1000.00000000, 1000.00000000 ], [ 1000.00000000, 1000.00000000, 1000.00000000 ] ] } } }
{
"A" : {
"B" : {
"C" : [
[ 1000.00000000, 1000.00000000, 1000.00000000 ],
[ 1000.00000000, 1000.00000000, 1000.00000000 ],
[ 1000.00000000, 1000.00000000, 1000.00000000 ]
]
}
}
}
我想把它写到一个json文件中,而且,我希望文本与我上面写的完全一致
但是,如果我用下面的代码编写它,d就是字典
>>> d
{u'A': {u'B': {u'C': [[1000.0, 1000.0, 1000.0], [1000.0, 1000.0, 1000.0], [1000.0, 1000.0, 1000.0]]}}}
>>> json.dump(d,open('b.json','w'))
我在b.json中得到的信息如下:
{"A": {"B": {"C": [[1000.0, 1000.0, 1000.0], [1000.0, 1000.0, 1000.0], [1000.0, 1000.0, 1000.0]]}}}
所有内容保持在一行中
然后我尝试以下方法:
json.dump(d,open('b.json','w'), indent=2)
内容现在变成:
{
"A": {
"B": {
"C": [
[
1000.0,
1000.0,
1000.0
],
[
1000.0,
1000.0,
1000.0
],
[
1000.0,
1000.0,
1000.0
]
]
}
}
}
两条路线都很丑陋。我有没有办法实现理想的对齐
谢谢大家帮助我 作为使用缩进转储的替代方法,您可以使用内置的pretty print模块
import pprint
pprint.print(json)
除非您认真定制JSON编码器。美学是主观的,在通用编码器中无法解释这一点。可以缩进也可以不缩进,不能以特定的自定义方式缩进。