Python教程:一文了解Python的深拷贝与浅拷贝
在Python中,深拷贝和浅拷贝是用于复制对象的两种方式。浅拷贝复制了对象的最外层,而深拷贝则递归地复制了对象的所有嵌套部分。
浅拷贝使用 copy
模块的 copy
函数实现,深拷贝使用 copy
模块的 deepcopy
函数实现。
例子:
import copy
# 定义一个嵌套结构
original = [1, 2, [3, 4]]
# 浅拷贝
shallow_copy = copy.copy(original)
# 深拷贝
deep_copy = copy.deepcopy(original)
# 修改原始对象
original.append(5)
original[2].append(6)
# 浅拷贝不会影响浅拷贝后的对象
print(shallow_copy) # 输出: [1, 2, [3, 4, 6]]
# 深拷贝阻止原始对象内部的改变
print(deep_copy) # 输出: [1, 2, [3, 4]]
浅拷贝和深拷贝的区别在于,浅拷贝后的对象是原始对象的一个新的外壳,而深拷贝则完全复制了原始对象的所有内容,创建了一个新的独立的对象。
评论已关闭