Python-更新单个元素会影响同一列中的所有元素

时间:2019-01-05 23:37:38

标签: python arrays multidimensional-array

我试图创建一个connect 4类,但是每当我放一个字母/令牌时,它都会更新整个列。我无法弄清楚为什么会这样:

    Procedure FILLHIST_STATION compiled

        No errors.

然后,当我打印self.board时,提供的列中的每个插槽都会更新。为什么会这样?

1 个答案:

答案 0 :(得分:0)

问题在这里:

self.board = [[0] * width] * height

这样做时,self.board包含对height的同一行的[0]*width引用。现在您需要将其更改为

self.board = [[0]*width for _ in range(height)]