如何在Python中从Json读取数据

时间:2014-07-28 10:42:26

标签: python json api

我一直在玩英雄联盟API,但被困了。通过使用此代码,我可以阅读最近的匹配。

import json

Json_games = urllib2.urlopen(url)
Games = json.load(Json_games)

我用它来遍历不同的项目并打印特定的项目。

for item in Games['games']:
     Gamemode = item['gameMode']

但是更有用的统计数据如杀戮在某种列表中。使用:

item['stats']

输出:

  

{u' timePlayed':2511,你'胜利':是的,你' wardPlaced':8,你' totalDamageDealt':161102,你&# 39; magicDamageDealtToChampions':33934,u' largestMultiKill':1,u' largestKillingSpree':6,u' magicDamageTaken':5153,u' totalTimeCrowdControlDealt' :452,你' trueDamageDealtPlayer':4791,你' neutralMinionsKilledEnemyJungle':2,你' item2':3089,你' item3':1001,u&#39 ; item0':3301,你' item1':3151,你' item6':3340,你' item4':3001,你' minionsKilled': 140,你好,中立,杀死你的丛林':4,你'冠军杀死':9,你帮助':12,你好,中立,杀死' :6,你&physical 39.amageDealtToChampions':2451,你' goldSpent':9520,你' trueDamageDealtToChampions':3507,你':18,你&#39 ; physicalDamageDealtPlayer':30830,你' totalHeal':1720,你' goldEarned':14642,u' turretsKilled': 2,你的总损失数据显示':39894,你的总数是多少':1,你'团队':100,你' numDeaths':5,你' totalDamageTaken':13629,u' killingSprees':1,u' magicDamageDealtPlayer':125480,u' physicalDamageTaken':8475}

由于缺乏经验,我不知道如何能够不经常阅读它们,我试着在Json中再次打开它,但那不起作用。我真正的问题是如何获得一个名为" championsKilled"的变量。以9为内容。我真的不需要做什么,并会嘲笑任何帮助和建设性的批评。

This is the whole Json file

1 个答案:

答案 0 :(得分:0)

JSON被加载到嵌套字典中。该项是字典,其'stats'键的值也是字典。因此你可以这样做:

item['stats']['championsKilled']

stats = item['stats']
print(stats['championsKilled'])