我想初始化一个名单,但后来我不得不改变在上述列表中的每个细胞。我做了:的Python:创建和更改列表
matrix = [[[0] * len(t[0])] * len(t[0])]
但是当试图改变一个单元格时,它会改变矩阵的整个列。为什么是这样?
我想初始化一个名单,但后来我不得不改变在上述列表中的每个细胞。我做了:的Python:创建和更改列表
matrix = [[[0] * len(t[0])] * len(t[0])]
但是当试图改变一个单元格时,它会改变矩阵的整个列。为什么是这样?
是,问题是要复制引用,而不是创建新的对象,要解决,你可以做这样的事情:
matrix = [[0 for _ in xrange(len(t[0]))] for _ in range(len(t[0]))]
LEN(T [0])是可变的,deppends用户。唯一的问题是在列表/矩阵@DylanLawrence – raissa