TypeError: list indices must be inegers or slices, not str (Riot Games Python API)

TypeError: list indices must be inegers or slices, not str (Riot Games Python API)

我尝试了网站上和 google 提供的许多潜在解决方案,但 none 都给了我任何成功。我正在尝试根据对 Riot Games API.

的请求从列表中提取特定项目

我的代码是:

lol_watcher = LoLWatcher('<API_KEY>')

my_region = 'na1'

me = lol_watcher.summoner.by_name(my_region, 'doublelift')

my_ranked_stats = lol_watcher.league.by_summoner(my_region, me['id'])

print(my_ranked_stats)

输出如下:

[{'leaguId': <leagueID>, 'queueType': <queueType>, 'tier': <tier>,...}]

当我尝试 print 时我的问题就出现了 'tier'print(my_ranked_stats['tier'])

如果我那样构建,它会抛出 TypeError: list indices must be integers or slices, not str

如有任何帮助,我们将不胜感激。

那是因为my_ranked_stats是一个列表'tier' 键存在于 字典 中,它是 my_ranked_stats 列表的第一个第一个元素。所以你必须像这样从列表的第 0 个索引访问 ['tier']

print(my_ranked_stats[0]['tier'])