问题描述
我正在为一个班级制作一个 connect4 游戏,但我的播放功能遇到了一个错误,我很难弄清楚。
def play(grid,column,checker):
counter = 0
for x in grid[0]:
counter += 1
print(counter)
if counter > column-1 :
for row in reversed(grid):
if row[column-1] == "empty":
row[column-1] = checker
print(True)
return True,grid,checker
else:
print(False)
return False,checker
问题发生在第 9 行(如果 row[column-1] == "empty")并且我不断收到 typeError 'int' opject is not subscriptable。 grid 是一个从不同函数返回的全局变量。 感谢您的帮助!
解决方法
这里的问题实际上是在不同的函数 grid
被返回。您一定在那里犯了一些错误,导致不同的函数返回 [1,6,3,8,3]
形式的某些内容,而您的 play
函数采用 [[1,5,2,10],[1,10]]
形式的某些内容。