我正在玩python和JSON文件。我正在做一个简单的游戏作为学习项目,但是当我想要的时候,我无法按需获取列表中的嵌套密钥。在下面的示例中,我试图获取播放器的名称。
这是JSON文件(player_sheet_daniel.json
):
[
{
"sheet_header": {
"player name": "Daniel",
"character name": "Ulrik the Blob"
}
},
{
"prim_attr": {
"STR": "11",
"DEX": "12",
"HP": "15",
"SKI": "16"
}
}
]
我试过了:
import json
with open('player_sheet_daniel.json','r') as sheet_json:
sheet_py = json.load(sheet_json)
for section in sheet_py:
print(section['sheet_header']['player name'])
我得到:KeyError: 'sheet_header'
。
答案 0 :(得分:1)
您的JSON示例是一个包装两个对象的数组。所以,正确的python语法是:
import json
with open('player_sheet_daniel.json','r') as sheet_json:
sheet_py = json.load(sheet_json)
section = sheet_py[0]
print(section['sheet_header']['player name'])