Python连接4播放函数

问题描述

我正在为一个班级制作一个 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]] 形式的某些内容。