Python列表的浅拷贝与深拷贝怎么实现

   2024-10-20 9740
核心提示:Python中可以使用copy模块中的copy()方法来实现列表的浅拷贝和深拷贝。浅拷贝:浅拷贝会创建一个新的列表对象,但是其中的元素仍

Python中可以使用copy模块中的copy()方法来实现列表的浅拷贝和深拷贝。

浅拷贝:浅拷贝会创建一个新的列表对象,但是其中的元素仍然是原列表中元素的引用。可以使用copy()方法来实现浅拷贝。
import copy# 原列表original_list = [1, 2, [3, 4], 5]# 浅拷贝shallow_copy_list = copy.copy(original_list)original_list[2][0] = 6print(original_list)  # [1, 2, [6, 4], 5]print(shallow_copy_list)  # [1, 2, [6, 4], 5]
深拷贝:深拷贝会创建一个新的列表对象,并且其中的元素也会进行递归地拷贝,不再是原列表中元素的引用。可以使用copy()方法的深拷贝版本deepcopy()来实现深拷贝。
import copy# 原列表original_list = [1, 2, [3, 4], 5]# 深拷贝deep_copy_list = copy.deepcopy(original_list)original_list[2][0] = 6print(original_list)  # [1, 2, [6, 4], 5]print(deep_copy_list)  # [1, 2, [3, 4], 5]

通过上述代码示例可以看出,浅拷贝只是拷贝了原列表的引用,深拷贝则是完全复制了原列表的值。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号