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

Python代码遍历数组时循环变量[i]无法识别的问题如何解决?

问题修复方案

错误原因

  • 你编写的for循环存在逻辑错误:执行for i in access[courtindexacc][i]时,变量i还未完成初始化赋值,Python解释器无法识别未定义的索引变量,因此抛出变量未识别报错。
  • 你对列表遍历的逻辑理解有误:如果要通过下标i同步获取对应位置的预约状态和时间,需要先遍历所有合法下标,而不是直接在in后接未定义索引的列表片段。

修复后的完整代码

times = {
    "times1": ["8","9","10","11","12","13","14","15","16","17"],
    "times2": ["8","9","10","11","12","13","14","15","16","17"],
    "times3": ["8","9","10","11","12","13","14","15","16","17"],
    "times4": ["8","9","10","11","12","13","14","15","16","17"],
    "times5": ["8","9","10","11","12","13","14","15","16","17"],
    "times6": ["8","9","10","11","12","13","14","15","16","17"],
    "times7": ["8","9","10","11","12","13","14","15","16","17"],
    "times8": ["8","9","10","11","12","13","14","15","16","17"]
}
access = {
    "access1": [True,False,False,True,True,False,False,False,True,True],
    "access2": [False,False,True,True,False,False,False,False,True,True],
    "access3": [False,False,False,True,True,False,True,False,True,False],
    "access4": [True,True,False,True,True,True,False,False,True,True],
    "access5": [True,False,False,True,True,False,False,False,True,False],
    "access6": [True,False,False,True,True,False,True,True,False,True],
    "access7": [True,True,True,True,True,False,False,False,True,True],
    "access8": [True,False,True,True,False,False,False,False,True,True]
}
askcourt = input("你想预约哪个场地?(1-8) ")
courtindextime = "times" + askcourt
courtindexacc = "access" + askcourt
# 核心修改:遍历列表长度对应的下标,i会从0依次赋值到列表长度-1
for i in range(len(access[courtindexacc])):
    if access[courtindexacc][i]:
        print("场地 %s %s点可预约" %(askcourt, times[courtindextime][i]))

优化写法

使用enumerate可以直接同时获取下标和对应的预约状态,代码更简洁:

for i, is_available in enumerate(access[courtindexacc]):
    if is_available:
        print(f"场地 {askcourt} {times[courtindextime][i]}点可预约")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 08:27:03