井字游戏错误-“ IndexError:列表索引超出范围”

时间:2020-06-18 19:47:36

标签: python

我仍然是初学者。目前,我正在使用Python 3制作井字游戏。我的一个用来检查空间是否已满的函数之一不断显示错误消息:

“ IndexError:列表索引超出范围”,

我不知道如何解决它。显然,这是if语句给我带来麻烦,但我没有发现任何问题。我已经在网上搜寻解决方案,但还没有找到解决方案。如果有人可以帮助我解决这个问题,我们将不胜感激。

 vectfunc = np.vectorize(F,otypes=[np.float],cache=False)

2 个答案:

答案 0 :(得分:0)

您的问题是position是一个太大的数字,并且board列表在该索引处没有值。

尝试在功能中打印位置,然后将其与电路板的尺寸进行比较以查看错误所在。

记住列表是零索引的,因此,如果列表为3x3,则最高索引将是2,而不是3

答案 1 :(得分:0)

想象一下,您有一个购物清单,上面有“葡萄,胡萝卜,面包”,您问清单中的第四件事是什么?这就是这个错误。您可能需要记住,列表的第一部分是索引0,但是length显示了您认为它的长度,如:

x = ['a', 'b']

a是x [0],b是x [1]。但是:

len(x) = 2

您需要完成的工作是更改

board[position]

收件人:

board[position-1]