我正在为班级制作四子棋游戏,但我的游戏功能遇到错误。
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 , grid , checker
问题出现在第 9 行(
if row[column-1] == "empty"
),我不断收到
typeError 'int' 对象不可下标
grid
是从不同函数返回的全局变量。
这里的问题实际上是从不同的函数
grid
返回。您一定在那里犯了一些错误,这导致不同的函数返回 [1, 6, 3, 8, 3]
形式的内容,而您的 play
函数则采用 [[1, 5, 6, 2, 10], [1, 5, 6, 2, 10], [1, 5, 6, 2, 10], [1, 5, 6, 2, 10]]
形式的内容。