2016-07-06 119 views
0

用Python解析JSON时有点麻烦,我不确定我需要什么语法。每个Json元素的Python

的结构看起来像这样

name = (json_data['JsonResultTitle']['Loc']['List'][0]['Events'][0]['Name']) 

数字ListEvents后,既可以改变。

我可以使用类似的东西难看通过List那些迭代:

namecounter = 0 
try: 
    name = (json_data['JsonResultTitle']['Loc']['List'][namecounter]['Events'][0]['Name']) 
    namecounter +=1 
except: 
    print "stop" 

而且我可以在技术上嵌入另一个循环中有它运行,直到另一个异常为Events计数器,但必须有一个整洁这样做的方式。

像这样的东西可能是整洁,但它仍然没有罢工我做事的正确方法之一:

counter = 0 
secondcounter = 0 
for i in json_data['JsonResultTitle']: 
    try: 
     print i['Loc']['List'][counter]['Events'][0]['Name'] 
    except: 
     print "no first" 
    counter +=1 
    try: 
     print i['Loc']['List'][counter]['Events'][secondcounter]['Name'] 
    except: 
     print "no second" 
    secondcounter +=1 

这可能是再明显不过我看不到这样做的正确方法这个。
我真的很感激在正确的方向推动。

回答

3

好像你只是想要一个嵌套循环。

for item in json_data['JsonResultTitle']['Loc']['List']: 
    for event in item['Events']: 
     print event['Name'] 
+0

完美。当我看到它时,它变得更有意义。非常感激! – PoweredByCoffee

相关问题