我有这段代码,用于处理tic-tac-toe 中的绘图
def end_of_game():
if grid[0][0] and grid[1][0] and grid[2][0] and grid[0][1] and grid[0][2] and grid[1][1] and grid[1][2] and grid[2][1] and grid[2][2] == 1 or 2:
print("game is a draw")
exit()
# 1 = x
# 2 = O
在每次放置之后;游戏是平局;我如何使它们都必须=1或2才能打印";游戏是平局;
and
是一个逻辑运算符,它接受两个布尔操作数。例如,True and False
的计算结果为False
。当您编写grid[2][1] and grid[2][2] == 1
时,grid[2][1]
会隐式转换为布尔值,grid[2][2] == 1
会自行求值,然后在两者之间执行and
操作。你真正想要的是grid[2][1] == 1 and grid[2][2] == 1