import numpy as np
player1 = True
def create_board():
board = np.zeros((3,3), dtype=int)
return board
def place(board , player1 , position ):
if player1 == True:
player1 = False
if board[position] == 0:
board = position
elif board[position] != 0:
print("False , place taken 1")
else:
if player1 == False:
if board[position] == 0:
board = position
elif board[position] != [0, 0]:
print("False , place taken 2 ")
return board函数调用:
place(board=create_board() , player1=1 , position=(0,0))这是我的代码,在这段代码中,有很多事情发生了,但有一部分我无法正确理解。在粗体部分,我尝试替换
([0,0,0],
[0,0,0],
[0,0,0])至
([1,0,0],
[0,0,0],
[0,0,0])我可以知道吗,我该怎么做呢?谢谢!
发布于 2020-06-01 23:10:11
当您尝试在board = position中更新您的电路板时,实际上是在使用您的坐标对更新整个电路板。
您真正想要的是精确定位二维数组中的确切位置,您必须更新该位置才能存储占用的单元格。您可以使用以下命令更改这一行
board[position] = 1 # occupied cell然而,正如Hammad在另一个答案中所说的那样,更改您的
0 for unoccupied
1 for occupied而必须依赖于知道目前谁在进行中,
0 for unoccupied
1 for occupied by player one
2 for occupied by player two所以你总能知道谁住了那间牢房。
https://stackoverflow.com/questions/62133942
复制相似问题