我在解析复杂的 json 时遇到问题。就是这样:
{
"response": {
"players": [
{
"bar": "76561198034360615",
"foo": "49329432943232423"
}
]
}
}
我的代码:
url = urllib.urlopen("foobar").read()
js = json.load(url)
data = js['response']
print data['players']
问题是这会打印字典。我想要的是达到键的值,如 foo
和 bar
。到目前为止我尝试做的是 data['players']['foo']
并且它给了我一个错误,列表索引应该是整数,我当然试过,它没有用。所以我的问题是如何达到这些值?提前致谢。
最佳答案
data['response']['players']
是一个数组(由括号 ([, ]
) 定义),因此您需要使用特定索引(在本例中为 0):
data['players'][0]['foo']
或者遍历所有玩家:
for player in data['response']['players']:
print player['foo']
关于Python解析json问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16285069/