Python 删除json文件中出现的所有密钥

Python 删除json文件中出现的所有密钥,python,json,Python,Json,如何删除json文件中出现的所有键?在下面的例子中,我想删除所有的“评级”键 现在情况如何: { "player": { "rating": "99", "rarity": "super_rare" }, "player2": { "rating": "87", "rarity": "rare" } } 我想要的是: { "player": { "rarity": "super_rare" }, "player2": {

如何删除json文件中出现的所有键?在下面的例子中,我想删除所有的“评级”键

现在情况如何:

{
  "player": {
    "rating": "99",
    "rarity": "super_rare"
  },
  "player2": {
    "rating": "87",
    "rarity": "rare"
  }
}
我想要的是:

{
  "player": {
    "rarity": "super_rare"
  },
  "player2": {
    "rarity": "rare"
  }
}
试试这个:

import json

with open('data.json') as fp:
    data = json.loads(fp.read())
    for player in data.values():
        del player['rating']

with open('output.json', 'w') as fw:
    json.dump(data, fw, indent=4)
输出:

{'abc': {'rarity': 'super_rare'}, 'efg': {'rarity': 'rare'}}
试试这个:

import json

with open('data.json') as fp:
    data = json.loads(fp.read())
    for player in data.values():
        del player['rating']

with open('output.json', 'w') as fw:
    json.dump(data, fw, indent=4)
输出:

{'abc': {'rarity': 'super_rare'}, 'efg': {'rarity': 'rare'}}

我认为
load
采用JSON字符串而不是文件名。
player
是变量名而不是字符串。它循环遍历字典的所有键。如果我想打开一个.json文件,修改数据,然后保存新的.json?我认为
loads
采用json字符串而不是文件名。
player
是变量名而不是字符串。它循环遍历字典的所有键如果我想打开一个.json文件,修改数据,然后保存新的.json?