我对Python相当陌生,所以我对语法和事情的工作方式并不十分熟悉。这是可能我误解,但我可以从我的代码跟这行:在Python中引用相同对象的对象列表列表
largeBoard = [[Board() for i in range(3)] for j in range(3)]
创造9个引用到同一个董事会的对象,而不是9个不同的董事会对象。我如何创建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”是什么让我觉得他们是同一个对象的所有引用。
它确实创建了9个不同的Board对象。尝试在'largeBoard'中打印每个对象的'id'。 –
是什么让你觉得它不会创建不同的对象? –
它们都是不同的对象。 – zsong