python 如何更改JSON数组中嵌套字典中的特定值?

izkcnapc  于 2022-12-17  发布在  Python
关注(0)|答案(1)|浏览(186)

我不知道如何在另一个字典中改变一个字典的特定值。
Json:

[
  {
    "characters":{
        "name" : "John",
        "inventory" : {"Apples" : 12}
    },
  }
]

巨蟒:

with open("json", "r") as f:
    data = json.load(f)
for character in data["characters"]:
    if character["name"] == "John":
    print(!)

我希望能够在if语句中改变John的苹果数量。
我试着输入:

data["characters"][character["name"]]["inventory"]["Apples"] -= 12

然后在写入模式下通过另一个打开进行转储。

r1zk6ea1

r1zk6ea11#

迭代一个法令的正确方法是:

for keys,values in data.items():    
    if values['name'] == "John":
          values['inventory']['Apples']-=12

相关问题