TypeError:无法使用Python访问JSON元数据

时间:2016-12-12 23:09:51

标签: python json

所以我试图用python访问以下JSON数据,当我给出语句时:

print school['students'] 

基础数据被打印,但我真正希望能够做的是打印'id'值。

   { 'students':[  
                  {  
                     'termone':{  
                        'english':'fifty',
                        'science':'hundred'
                     },
                     'id':'RA1081310005'
                  }
               ]
   }

因此,当我执行以下操作时,我收到错误:

 print school ['students']['id']

TypeError:list indices必须是整数,而不是str

任何人都可以建议我如何访问ID&我哪里错了!

2 个答案:

答案 0 :(得分:2)

school['students']是一个列表。您正尝试访问该列表的第一个元素,id键属于该元素。相反,试试这个:

school['students'][0]['id']
Out: 'RA1081310005'

答案 1 :(得分:0)

这里的问题是,在您的列表中,'id'不是字典的一部分,它是列表的一部分。要解决此问题,请将字典更改为以下内容:

school = {'students':{
            'termone': {
                "english": "fifty:,
                "science": "hundred
            },
            "id":"RA1081310005"
        }
}

基本上,你有一个列表,没有理由拥有它,所以我删除了它。