[python 学习]浅拷贝和深拷贝
Posted cyber-shady
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[python 学习]浅拷贝和深拷贝相关的知识,希望对你有一定的参考价值。
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))
#可见深拷贝以后地址明显不同
以上是关于[python 学习]浅拷贝和深拷贝的主要内容,如果未能解决你的问题,请参考以下文章