概述
I'm trying to write a function in Python that simulates a horse race. While there's no winner, it clears the screen, shows the list of horses (all have index starting at zero). Then, on the line I've marked, the code messes up.
I get the index error list out of range. I'm trying to randomly pick a horse (randomly pick an index number) and add 1 to the value. But I can't seem to figure it out!!
while (no_winner):
os.system("cls")
print(horses)
# randomly assign a horse to step forward
rando = random.randint(1, HORSE_NUM)
horses[rando] += 1 #######PROBLEM
# if the horse exceeds the finish line, he wins
if (steps > FINISH_LINE):
winner = horses[index]
no_winner = False
解决方案
random.randint() is inclusive, so if you get a random integer that is equal to HORSE_NUM it will be out of bounds. try
rando = random.randint(0, HORSE_NUM - 1)
最后
以上就是爱笑火为你收集整理的python index out of bounds,Python错误代码:IndexError:索引错误列表索引超出范围的全部内容,希望文章能够帮你解决python index out of bounds,Python错误代码:IndexError:索引错误列表索引超出范围所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复