import copy
l=[1,3.14,[2,4,6]]
l2=copy.copy(l)
print(l)
print(l2)
print(id(l))
print(id(l2))
print(‘------------------------‘)
for i in l:
print(id(i))
print(‘------------------------‘)
for i in l2:
print(id(i))
#可见虽然l和l2的地址不一样,但里里面的内容都是一样的
#copy也就是浅拷贝,l和l2的不同相当于两个指针的地址不一样
‘‘‘
浅拷贝特点:
浅拷贝后两个序列的内存地址不相同
两个序列,相同索引的元素的内存地址 相同
‘‘‘
print(‘------------------------‘)
print(‘------------------------‘)
print(‘------------------------‘)
l3=copy.deepcopy(l)
print(‘------------------------‘)
for i in l3:
print(id(i))
#可见深拷贝以后地址明显不同
原文地址:https://www.cnblogs.com/cyber-shady/p/11520450.html
时间: 2024-10-06 07:54:44