我对 Python 还很陌生,所以我对语法和事情的确切工作方式并不是非常熟悉。我可能会误解,但从我的代码中可以看出这一行:
largeBoard = [[Board() for i in range(3)] for j in range(3)]
正在创建对同一 Board 对象的 9 个引用,而不是 9 个不同的 Board 对象。如何创建 9 个不同的 Board 对象?
当我运行时:
largeBoard = [[Board() for i in range(3)] for j in range(3)]
x_or_o = 'x'
largeBoard[1][0].board[0][0] = 'g' # each Board has a board inside that is a list
for i in range(3):
for j in range(3):
for k in range(3):
for l in range(3):
print largeBoard[i][j].board[k][l]
我得到了多个“g”,这让我认为它们都是对同一个对象的引用。