Python对象的拷贝

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
一、定义

Python对象的拷贝分为两种:深拷贝和浅拷贝。

深拷贝:拷贝对象及其子对象。

浅拷贝:只拷贝对象本身,不会拷贝对象的子对象。

二、举例

有列表a=[1,2,3,4,[5,6]]。

浅拷贝有两种方法,一种是切片b=a[:],另外一种是使用copy库c=copy.copy(a)。

怎么验证这样是浅拷贝呢?

可以看到列表b和列表c中的子列表只是一个引用类型,并不是列表a的子列表的拷贝。

深拷贝的方法是使用copy库,下图可以看到列表d的子列表并没有随着a[4]的改变而改变。

好了今天就写到这里了。

推荐阅读:

Python UNIX和Linux系统管理指南 PDF高清版 http://www.linuxidc.com/Linux/2013-06/86448.htm

未经允许不得转载:演道网 » Python对象的拷贝

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册