深拷贝和浅拷贝
Posted 管控念头
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深拷贝和浅拷贝相关的知识,希望对你有一定的参考价值。
import copy # 深拷贝:会连子对象的内存也全部拷贝一份,对子对象的修改不会影响源对象 # 浅拷贝:不拷贝子对象的内容,只是拷贝子对象的引用 # a = [1, 2, [3, 4]] # b = a # print(id(a)) # print(id(b)) # a[2][0] = 4 # print(a) # print(b) # c = copy.copy(a) # 浅拷贝 # print(id(c)) # a[0] = 2 # print(c) # a[2][0] = 4 # 对源对象的子对象进行修改 # print(c) # c列表中的子对象也跟着发生了变化 # d = copy.deepcopy(a) # 深拷贝 # print(id(d)) # a[0] = 2 # print(d) # a[2][0] = 4 # 对源对象的子对象进行修改 # print(d) # d列表中的子对象没有发生变化
以上是关于深拷贝和浅拷贝的主要内容,如果未能解决你的问题,请参考以下文章