我正在编写一个Python程序来播放Tic Tac Toe,使用带有1
代表的“X”和0
代表的“O”的Numpy阵列。这个类包含的功能放置在基板上的标记:如何在Python中解压缩列表或元组
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]]
我想知道如果pos[0], pos[1]
参数在place_mark
函数可能以某种方式被pos
(它始终是长度为2的列表)的“解压缩”内容替换。在Ruby中,这将使用splat运算符完成:*pos
,但这在Python中似乎不是有效的语法。
'board.place_mark((0,1),1)'和'self.grid [pos] = mark' –