如何将函数mark_block和mark_cell合并为一个函数?
import numpy as np
class Board:
def __init__(self):
self.cells = np.zeros((3, 3, 3, 3))
self.block = np.zeros((3, 3))
def mark_block(self, main_row, main_col, player):
self.block[main_row][main_col] = player
def mark_cell(self, main_row, main_col, row, col, player):
self.cells[main_row][main_col][row][col] = player
编辑:没有if语句也可以这样做吗?
2条答案
按热度按时间35g0bw711#
xvw2m8pv2#
mark_move
方法同时更新单元格和区块数组。如果区块中的所有单元格都被占用,则区块数组中相应的元素将被设置为玩家的值。np.all
函数检查数组中的所有元素是否都是non-zero
,这表明区块中的所有单元格都被占用。