就像NXC所说的,Python变量名实际上指向一个对象,而不是内存中的特定位置。
newList = oldList会创建两个指向同一对象的不同变量,因此,更改
oldList也会更改
newList。
但是,当您这样做时
newList =oldList[:],它将“切片”列表,并创建一个新列表。的默认值为
[:]0,并且位于列表的末尾,因此它将复制所有内容。因此,它使用第一个中包含的所有数据创建一个新列表,但是可以更改两个列表而无需更改另一个。
欢迎分享,转载请注明来源:内存溢出
就像NXC所说的,Python变量名实际上指向一个对象,而不是内存中的特定位置。
newList = oldList会创建两个指向同一对象的不同变量,因此,更改
oldList也会更改
newList。
但是,当您这样做时
newList =oldList[:],它将“切片”列表,并创建一个新列表。的默认值为
[:]0,并且位于列表的末尾,因此它将复制所有内容。因此,它使用第一个中包含的所有数据创建一个新列表,但是可以更改两个列表而无需更改另一个。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)