例如,我有 config.json :
{
"param.a" : 0.5,
"param.basic" : ["x", "y"],
"x.y.z" : [1, 2, 3]
}
加载并保存到另一个文件:
import json
import collections
j = json.load(open('config.json'), object_pairs_hook=collections.OrderedDict)
json.dump(j, open('new.json', 'w'), indent=4)
查看 new.json :
{
"param.a": 0.5,
"param.basic": [
"x",
"y"
],
"x.y.z": [
1,
2,
3
]
}
在 config.json 中制作 new.json 格式(空格,制表符,换行符)是否是一种简单的方法?
答案 0 :(得分:0)
也许你可以使用collections.OrderedDict来自定义你的json。
your_json = [OrderedDict(sorted(item.iteritems(), key=lambda (k, v): sort_order.index(k)))
for item in allsites]
之后
json.dumps(your_json, indent=4, separators=(',', ': '))
答案 1 :(得分:0)
当你json.load()
某事成为一个字典时。字典没有间距概念,因此您无法直接使用json.dump()
来实现此目的。当然,您可以手动解析文件并计算每个键的空间量。然后,您可以逐行手动编写它。