【发布时间】:2016-10-07 09:59:49
【问题描述】:
我有一个嵌套字典,其中包含 json 文件中的许多项目:
{
"Create Code For Animals": {
"mammals": {
"dog": {
"color": "brown",
"name": "John",
"legs": "four",
"tail": "yes"
},
"cat": {
"color": "blue",
"name": "Johnny",
"legs": "four",
"tail": "yes"
},
"donkey": {
"color": "grey",
"name": "Mickey",
"legs": "four",
"tail": "yes"
}
我想替换每只动物的名字,然后将其保存回文件中,并保持缩进不变(如图所示)。 我正在使用以下 2 种方法来加载和转储原始和更新的字典。
一切正常(用于更改值并将其保存回文件),但保存文件后行的缩进(格式)被破坏并且文件保存为一个长行(带有'\n'显示在更新值之后)。
我尝试过使用“pickle”(如此处的一篇帖子所示),但这不起作用,弄乱了文件中的所有数据。
def loadJson(self, jsonFilename):
with open(FILE_PATH + '\\' + jsonFilename, 'r') as f:
return json.load(f)
def writeJson(self, jsonFilename, jsonDict):
with open(FILE_PATH + '\\' + jsonFilename, 'w') as f:
return json.dump(jsonDict, f)
任何帮助都可以。
【问题讨论】:
标签: python json dictionary