我尝试过网站上和谷歌上提供的许多潜在解决方案,但都没有成功。根据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
列表的第一个元素。因此,您必须从列表的第零个索引访问['tier']
,如下所示:
print(my_ranked_stats[0]['tier'])