标签:print 优先 也会 port epc 深浅拷贝 style 列表 内存
import copy l1 = [1, 2, 3, [4, 5, 6]] l2 = copy.copy(l1) l2[3][0] = 3 # 修改二级列表的元素 l2[1] = 1 print(l1) print(l2)
结果:
[1, 2, 3, [3, 5, 6]]
[1, 1, 3, [3, 5, 6]]
二级列表的会随着任意一方的修改而共同改变,l1 的 二级列表如果优先改变 那么 l2 的二级列表也会跟着改变,同理,l2 优先改变也是如此
另外,一级列表的数据是独立的,它会重新开辟一块内存空间并拷贝一级列表的数据元素,二级列表只是引用并不会拷贝
import copy l1 = [1, 2, 3, [4, 5, 6]] l2 = copy.deepcopy(l1) l2[3][0] = 3 # 修改二级列表的元素 l2[1] = 1 print(l1) print(l2)
#结果:
[1, 2, 3, [4, 5, 6]]
[1, 1, 3, [3, 5, 6]]
深拷贝是重新开辟内存空间并将数据完完全全的拷贝出来一份,l1和l2 不会互相影响
标签:print 优先 也会 port epc 深浅拷贝 style 列表 内存
原文地址:https://www.cnblogs.com/leixiansheng6f6/p/9389824.html