我目前正在上一门课,我正在做一个井字游戏的人工智能项目。我正在做一个结果函数,它会从一个集合中获取未播放空间的可能结果(),它将为每个元组打印一个纸板(i,j),它是整个集合的一个元组,i代表行,j代表单元格。我可以深度复制棋盘,并通过我的动作定义创建一个包含棋盘可能结果的变量。我在从我的动作集()中取出每个元组并为每个元组创建一个棋盘时遇到了麻烦。
这是目前我尝试到目前为止只返回一个板与所有的空白空间填充,这是我不想要的。我想要多个板只填充一个空间出整个集:
def result(board, action):
#making a set variable with the actions definition which prints possible outcomes
action = actions(board)
#change board depending on action
for i,j in action:
if player(board) == X:
board[i][j] = X
else:
board[i][j] = O
return board
这是来自操作定义的操作集的代码
action = actions(board)
请不要给予我真实的的答案,我只是需要帮助和推动,以便能够输出多个板,无论是一个系统,内置功能等。
1条答案
按热度按时间gdrx4gfi1#
请注意,
result()
函数采用board
(一个2 x 2阵列),并且只有1个action
(给定为元组(i, j)
,其中i
是board
上的行,j
是board
上的列)作为参数,您所要做的就是制作给定board
的副本,播放该移动akaaction
,即返回应用了action
/移动board
的副本。您可以使用
player()
函数来确定要玩哪个玩家。对于其他产品,您可以在这里找到规格:https://cs50.harvard.edu/ai/2020/projects/0/tictactoe/#understanding