【发布时间】:2016-08-08 14:45:00
【问题描述】:
我正在编写一个 Python 程序来玩井字游戏,使用 Numpy 数组,其中“X”由1 表示,“O”由0 表示。该类包含一个在板上放置标记的函数:
import numpy as np
class Board():
def __init__(self, grid = np.ones((3,3))*np.nan):
self.grid = grid
def place_mark(self, pos, mark):
self.grid[pos[0],pos[1]] = mark
例如,
board = Board()
board.place_mark([0,1], 1)
print board.grid
产量
[[ nan 1. nan]
[ nan nan nan]
[ nan nan nan]]
我想知道place_mark 函数中的pos[0], pos[1] 参数是否可以以某种方式被pos 的“未打包”内容替换(它始终是长度为2 的列表)。在 Ruby 中,这将使用 splat 运算符来完成:*pos,但这似乎不是 Python 中的有效语法。
【问题讨论】:
-
board.place_mark((0,1), 1)和self.grid[pos] = mark