位置: 编程技术 - 正文

Python中的复制操作及copy模块中的浅拷贝与深拷贝方法(python复制sheet)

编辑:rootadmin

推荐整理分享Python中的复制操作及copy模块中的浅拷贝与深拷贝方法(python复制sheet),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python里怎么复制,python复制快捷键,python复制的代码怎么用,python复制快捷键,python复制内容,python中复制粘贴,python复制sheet,python复制sheet,内容如对您有帮助,希望把文章链接给更多的朋友!

程序中常常需要复制一个对象, 按思路应该是这样的

已经复制好了,但是现在得改变一下第一个元素的值把它改成5

我改变了b的第一个元素的值,但是a的值也改变了,这是因为python中的=是引用.a和b指向的是相同的列表,所以改变列表会出现以上的结果.

解决方法是切片操作

但是在嵌套列表的时候呢,试一试

恩!没什么问题,在试一试嵌套列表元素

a的值还是改变了,切片复制只对该对象进行拷贝不会对子元素进行拷贝

Python中的复制操作及copy模块中的浅拷贝与深拷贝方法(python复制sheet)

copy 模块

copy模块用于对象的拷贝操作。该模块非常简单,只提供了两个主要的方法: copy.copy 与 copy.deepcopy ,分别表示浅复制与深复制。什么是浅复制,什么是深复制,网上有一卡车一卡车的资料,这里不作详细介绍。复制操作只对复合对象有效。用简单的例子来分别介绍这两个方法。

浅复制只复制对象本身,没有复制该对象所引用的对象。

结果:

同样的代码,使用深复制,结果就不一样:

结果:

改变copy的默认行为

在定义类的时候,通过定义__copy__和__deepcopy__方法,可以改变copy的默认行为。下面是一个简单的例子:

结果:

Python编程中对super函数的正确理解和用法解析 当在子类需要调用父类的方法时,在python2.2之前,直接用类名调用类的方法,即非绑定的类方法,并把自身对象self作参数传进去。classA(object):defsay(self):

Python使用ntplib库同步校准当地时间的方法 NTP(NetworkTimeProtocol)是由美国德拉瓦大学的DavidL.Mills教授于年提出,设计用来在Internet上使不同的机器能维持相同时间的一种通讯协定。NTP估算封包

Python使用迭代器打印螺旋矩阵的思路及代码示例 思路螺旋矩阵是指一个呈螺旋状的矩阵,它的数字由第一行开始到右边不断变大,向下变大,向左变大,向上变大,如此循环。螺旋矩阵用二维数组表

本文链接地址:https://www.jiuchutong.com/biancheng/387023.html 转载请保留说明!

上一篇:快速排序的算法思想及Python版快速排序的实现示例(快速排序的算法流程图)

下一篇:Python编程中对super函数的正确理解和用法解析(对于python程序,对代码缩进的要求非常严格)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络