3 回答

TA贡献1826条经验 获得超6个赞
为什么不只是
size = 5
board = []
for row in range(size):
board.append(["O"]*row + ["X"] + ["O"]*(size-row-1))

TA贡献1853条经验 获得超6个赞
如果您确定您的板是正方形,则对角线元素将是行号和列号相同的地方。您可以通过 row = board[rowNum] 访问每一行,然后 row[colNum] 将为您提供一个元素。如果 rowNum == colNum 你在对角线上。您可以像我在下面所做的那样将两者挤压在一起(board[i][i])。
注意:如果你的板子是一个列表(可变对象),在这样的函数中调用它会改变传递给 boardObject 的变量的内容,即使没有返回“boardObject”,所以请注意那个。
def replace_diag(boardObject, replacement):
for i in range(len(boardObject)):
boardObject[i][i] = replacement

TA贡献1775条经验 获得超8个赞
board = [] for x in range(0,5): board.append(["O"] * 5)
印刷(板)
def print_board(board): for i,row in enumerate(board): row[i]="X"
印刷板(板)
添加回答
举报