You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历JSON中的球员ID提取timeOnIce?解决代码下标错误

问题解决:提取球员上场时间报错修正

你的代码触发"'int' object is not subscriptable"错误,原因有两点:

  • 第二个循环用range(len(...))生成的j是整数索引,你试图对整数使用下标j['stats'],这不符合语法规则
  • 从JSON结构来看,players是字典类型(键为球员ID,值为包含球员数据的对象),并非列表,用索引遍历的方式完全不适用

修正后的代码(获取所有球员上场时间的一维列表)

toi = []

# 遍历每一场比赛的数据
for game in game_data_1:
    # 获取主场球队的球员字典
    home_players = game['liveData']['boxscore']['teams']['home']['players']
    # 遍历字典中的每个球员数据对象
    for player_data in home_players.values():
        toi.append(player_data['stats']['skaterStats']['timeOnIce'])

进阶需求:按场次分组的二维时间列表

如果需要得到每场比赛独立的球员上场时间列表(二维列表,每个子列表对应单场比赛的主场球员数据),可以用以下代码:

toi_per_game = []

for game in game_data_1:
    home_players = game['liveData']['boxscore']['teams']['home']['players']
    single_game_toi = []
    for player_data in home_players.values():
        single_game_toi.append(player_data['stats']['skaterStats']['timeOnIce'])
    toi_per_game.append(single_game_toi)

内容的提问来源于stack exchange,提问作者kobea14

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 22:28:14