Python 如何自定义缩进json转储?
我使用indent=2,但我希望第一级缩进为零。例如: 部分代码Python 如何自定义缩进json转储?,python,json,python-3.x,dictionary,Python,Json,Python 3.x,Dictionary,我使用indent=2,但我希望第一级缩进为零。例如: 部分代码 json.dump(json_data, json_file, indent=2) 输出 { "a": 1, "b": "2", "list": [ { "c": 3, "d": 4, } ] } 取而代之的是我想要的 { "a":
json.dump(json_data, json_file, indent=2)
输出
{
"a": 1,
"b": "2",
"list": [
{
"c": 3,
"d": 4,
}
]
}
取而代之的是我想要的
{
"a": 1,
"b": "2",
"list": [
{
"c": 3,
"d": 4,
}
]
}
如评论中所述,这不会造成功能上的差异,您需要定制漂亮的打印。差不多
import json
import textwrap
spam = {"a": 1, "b": "2",
"list": [{"c": 3, "d": 4,}]}
eggs = json.dumps(spam, indent=2).splitlines()
eggs = '\n'.join([eggs[0], textwrap.dedent('\n'.join(eggs[1:-1])), eggs[-1]])
print(eggs)
with open('spam.json', 'w') as f:
f.write(eggs)
输出
{
"a": 1,
"b": "2",
"list": [
{
"c": 3,
"d": 4
}
]
}
我真的很好奇你的使用案例是什么。@yedpodtrzitko我正在修改JSON用于游戏修改目的,它可以工作,但如果它匹配本机游戏JSON格式会更好JSON不区分空间。任何好的JSON解析器都应该忽略空格。@DYZ我知道,我在之前的评论中已经指定它对我有效,我只希望缩进纯粹用于装饰目的。
JSON
module不能做你想做的事。你必须自己写漂亮的打印机。