python深拷贝、浅拷贝

2022/5/27 1:20:02

本文主要是介绍python深拷贝、浅拷贝,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

  .copy() 浅拷贝 如上图 定义列表A指向一个元素,列表A里面嵌套两层列表分布指向两个元素,定义列表B,列表B=A,列表C浅拷贝列表A 从图上可以看出,列表A和列表B指向的是同一个列表元素,而列表C ,使用.copy()浅拷贝生成了一个新的列表元素 但是列表C只有第一层列表生成了新的元素,内部嵌套的列表元素还是指向了列表A的嵌套列表元素 浅拷贝只会在拷贝对象的第一层进行赋值,拷贝对象内部再有指向其他可变元素的话,内部并没有赋值,只是第一层的赋值操作   copy.deepcopy()深拷贝 语法
# 引入
import copy
#深拷贝
newlist = copy.deepcopy(要深拷贝的列表名)
继续上图 列表d = copy.deepcopy(a),列表d的第一层元素及内部所有的嵌套元素,全部指向了新的元素 深拷贝会将拷贝对象内所有的元素、嵌套元素,全部迭代生成新的元素     copy解决的是可变类型进行赋值操作时指向同一个元素,所有的可变元素都可以使用copy进行操作    



这篇关于python深拷贝、浅拷贝的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程