当前位置 : 主页 > 编程语言 > python >

详解Python之深浅copy

来源:互联网 收集:自由互联 发布时间:2022-06-30
一、概念 完整拷贝需使用深拷贝 ​​1.1.深拷贝​​ 拷贝所有对象,包括顶级对象及嵌套对象,相当于完整复制一份,与原始数据没有关系 ​​1.2.浅拷贝​​ 只拷贝顶级对象,不拷贝

一、概念

完整拷贝需使用深拷贝

​​1.1.深拷贝​​

拷贝所有对象,包括顶级对象及嵌套对象,相当于完整复制一份,与原始数据没有关系

​​1.2.浅拷贝​​

只拷贝顶级对象,不拷贝嵌套对象,因此原始数据的嵌套数据改变时,会跟着改变

二、代码

import copy
a = [1, 2, [3, 4]]
b = copy.copy(a) # 浅拷贝,当原始数据的嵌套数据改变时,会跟着改变
c = copy.deepcopy(a) # 深拷贝,完整复制一份,与原数据没有任何关系
a[2].append(5)
a.append(6)
print(a)
print(b)
print(c)

b是浅拷贝,当a列表的[3,4]追加元素5时,b列表会跟着变化,而深拷贝的c列表不受影响

a列表的顶级对象追加元素6,b和c均不受影响

三、执行效果

详解Python之深浅copy_嵌套


上一篇:Python计算闰年
下一篇:没有了
网友评论