我正在解决一些问题并遇到了这个。
Python代码
row=[]
col=[]
init=[-1,-1]
现在我附加这个init
to row
and col
.
row.append(init)
row.append(init)
col.append(init)
col.append(init)
所以row = [[-1,-1],[-1,-1]]
and col = [[-1,-1],[-1,-1]]
现在当我改变时init[0] = 9
my row
and col
变成row = [[9,-1],[9,-1]]
and col = [[9,-1],[9,-1]]
发生这种情况是因为您存储了对该对象的相同引用init
一遍又一遍。因此,当您修改对象时,每个人都会看到它。
你可以尝试append
而是使用列表的副本。例如,一种方法可能是:
row.append(list(init))
有不止一种方法可以克隆列表.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)