我有一个循环运行16次,因为它读取的文件有16行,我使用循环来读取时间戳的前两个字符。但我不知道如何保持n变量达到17.我试图使用while来限制n到16,但无济于事。这里是我的全部功能,我想作为http://calicoproject.org/Calico_Python_GIS详细的动画飓风艾琳的路径:IndexError:索引超出范围
def drawIrene(win):
line = Line()
n = 0
for (x,y) in dots:
time_stamp[n] = time_stamp[n][:2]
time_stamp[n+1] = time_stamp[n+1][:2]
time1 = abs(int(time_stamp[n]) - 12)
time2 = abs(int(time_stamp[n+1]) - 12)
wait_time = abs(int(time1) - int(time2))
x, y = ll2xy(x, y)
c = Circle(Point(x, y), int(eye_size[n]))
line.append(Point(x,y))
c.fill = Color(255, 255, 0, 62)
c.draw(win)
t = Polygon((x, y), (x+10, y+5), (x+int(movement_speed[n]), y-int(movement_speed[n])/2))
t.fill = Color("orange")
t.draw(win)
print(time1)
print(time2)
print()
#print (wait_time)
wait(wait_time)
if n < len(dots):
n += 1
else:
break
line.draw(win)
line.border = 2
这里需要提供显著更多的代码上下文。 – Amber
由于您的环境很少,我认为您的问题与'n + 1'索引有关。所以循环超过15倍,而不是16应解决您的问题 – inspectorG4dget
两个选项: LEN(点) - 1 或 N = 1个 –