Python 和 JSON - TypeError 列表索引必须是整数而不是 str

标签 python json

我正在学习使用 Python 和 API(特别是这个世界杯 API,http://www.kimonolabs.com/worldcup/explorer)

JSON 数据如下所示:

[
  {
    "firstName": "Nicolas Alexis Julio",
    "lastName": "N'Koulou N'Doubena",
    "nickname": "N. N'Koulou",
    "assists": 0,
    "clubId": "5AF524A1-830C-4D75-8C54-2D0BA1F9BE33",
    "teamId": "DF25ABB8-37EB-4C2A-8B6C-BDA53BF5A74D",
    "id": "D9AD1E6D-4253-4B88-BB78-0F43E02AF016",
    "type": "Player"
  },

 {
    "firstName": "Alexandre Dimitri",
    "lastName": "Song-Billong",
    "nickname": "A. Song",
    "clubId": "35BCEEAF-37D3-4685-83C4-DDCA504E0653",
    "teamId": "DF25ABB8-37EB-4C2A-8B6C-BDA53BF5A74D",
    "id": "A84540B7-37B6-416F-8C4D-8EAD55D113D9",
    "type": "Player"
  },
   ]

我只是想打印此 API 中的所有名字。这是我所拥有的:

import urllib2
import json

url = "http://worldcup.kimonolabs.com/api/players?apikey=xxx"
json_obj = urllib2.urlopen(url).read
readable_json = json.dumps(json_obj)
playerstuff = readable_json['firstName']
for i in playerstuff:
    print i['firstName']

但是当我运行它时,我收到错误“...第 8 行,在 ...TypeError:列表索引必须是整数,而不是 str”

我四处寻找解决方案,但似乎找到了更“深入”的 API 问题的问题,我还没有真正理解这一切,所以任何关于我需要做什么的帮助或解释都会令人惊叹。谢谢!

最佳答案

我解决了改变

readable_json['firstName']

通过

readable_json[0]['firstName']

关于Python 和 JSON - TypeError 列表索引必须是整数而不是 str,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24708634/

相关文章:

Python 3.6 - 将包含类型 'bytes' 的字典保存到文件

Python 缩进错误 : too many levels of indentation

ios - objective-c "callback"

json - 使用jq返回JSON对象中的具体信息

json - 如何获取json值

python - 如何在 Python 中应用自适应过滤器

python - 重写子类中的 __new__ 以创建特定的父类实例是一种反模式吗?

python - distutils索引错误: tuple index out of range

java - 为什么我的列表对象位于内存中?

python - 如何在 Avro 架构中定义复杂类型