【发布时间】:2018-02-17 19:48:19
【问题描述】:
我正在尝试将participantId 中的第一项与str(each['participantId']) 中的第一个列表相匹配。然后participantId 中的第二个项目到第二个列表,依此类推。
participantId = ['2','5','7','4','10','9','2']
each['participantId'] = [[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10]]
所以我想在participantId 上使用for 循环,但只让列表中的第一项与第一个列表执行if 语句,然后participantId 中的第二项与第二个列表执行if 语句。截至目前,我的代码仅将所有参与者 ID 与每个列表匹配。这是我的代码的 sn-p:
for each in json['participants']:
for x in str(each['participantId']):
print(x)
for i in participantId:
if x == i:
kills = each['stats']['deaths']
print('kills')
print(kills)
我已经将递归遍历列表视为一种解决方案,但我似乎无法做到这一点。我对 python 和编码非常陌生,所以可能缺少一些功能。
【问题讨论】:
-
我不明白您要做什么,最终操作
each['stats']['deaths']不依赖于您当前正在查看的participantId。for x ...和for i ...循环对each完全没有影响?? -
统计数据不需要受到 for 循环的影响。我只想在第一个参与者 ID 与列表匹配的情况下调用这些统计信息。因此,在满足这些条件的情况下,他们会打印杀戮。也许如果我包含更多的代码就会有意义
标签: python json python-3.x riot-games-api