Python中深拷贝和浅拷贝
# 在Python中,浅拷贝(shallow copy)和深拷贝(deep copy)是两种不同的复制方法,主要用于复制复杂对象(如列表、字典、集合等)。 # # 浅拷贝: # # 浅拷贝会创建一个新的对象,并复制原对象的引用到新对象中。 # 对于不可变对象(如整数、浮点数、字符串、元组),浅拷贝会复制对象本身。 # 对于可变对象(如列表、字典、集合),浅拷贝会复制对象的引用,而不是对象的内容。 # 深拷贝: # # 深拷贝会创建一个新的对象,并递归地复制原对象的所有内容到新对象中。 # 对于不可变对象,深拷贝会复制对象本身。 # 对于可变对象,深拷贝会复制对象的内容,而不是对象的引用。 # 以下是一些示例代码,展示了浅拷贝和深拷贝的区别: import copy # 浅拷贝示例 original_list = [[1, 2, 3], [4, 5, 6]] shallow_copied_list = copy.copy(original_list) # 修改原列表中的子列表 original_list[0][0] = 'X' print(original_list) # [['X', 2, 3], [4, 5, 6]] print(shallow_copied_list) # [['X', 2, 3], [4, 5, 6]] # 深拷贝示例 original_list = [[1, 2, 3], [4, 5, 6]] deep_copied_list = copy.deepcopy(original_list) # 修改原列表中的子列表 original_list[0][0] = 'X' print(original_list) # [['X', 2, 3], [4, 5, 6]] print(deep_copied_list) # [[1, 2, 3], [4, 5, 6]]
原文地址:https://blog.csdn.net/qq_38557378/article/details/142639515
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!