在python中我们定义二维矩阵会使用 a = [[0]*5]*5 其输出结果为 如果对其某个位置上的数赋值,则 由于我们创建二维矩阵时使用了浅复制,则在赋值过程会导致当一个数改变时,那一列的数都会随着改变,因为他们都指向同一个地址。 如果使用下列代码创建则不会出现上述情况。 array = [[0]*5 for _ in range(5]) 这种创建方式使得二维数组中的每一个行向量据定义在不同的地址空间,则赋值过程不会同时改变。