Python浅拷贝与深拷贝用法实例


Posted in Python onMay 09, 2015

本文实例讲述了Python浅拷贝与深拷贝用法。分享给大家供大家参考。具体分析如下:

>>> person=['name',['savings',100]]
>>> hubby=person[:]
>>> wifey=list(person)
>>> [id(x) for x in person,hubby,wifey]
[3074051788L, 3074061740L, 3074061996L]
>>> [id(y) for x in person,hubby,wifey for y in x]
[3074319552L,3073979916L,3074319552L,3073979916L,3074319552L,3073979916L]
>>> hubby[0]='joe'
>>> wifey[0]='jane'
(['joe',['savings',100]],['jane',['savings',100]],['name',['savings',100]])
>>> hubby[1][1]=70
>>> hubby,wifey,person
(['joe',['savings',70]],['jane',['savings',70]],['name',['savings',70]])

浅拷贝,创造了新的对象,但是它的对象引用确和被拷贝对象一致。

如果被拷贝对象的构成元素是不可变类型,则拷贝对象对这个元素的改变,实际上是创造一个新的对象。

如果被拷贝对象的构成元素是可变类型,则拷贝对象对这个元素的改变,实际上是在原对象的内存空间上修改这个内存空间里面的内容。

这样,才有hubby[1][1]=70会导致wifey,person相应值的改变。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python程序设计入门(2)变量类型简介
Jun 16 Python
python采用requests库模拟登录和抓取数据的简单示例
Jul 05 Python
python获取从命令行输入数字的方法
Apr 29 Python
简单介绍Python中的floor()方法
May 15 Python
定制FileField中的上传文件名称实例
Aug 23 Python
python实现NB-IoT模块远程控制
Jun 20 Python
Python学习笔记之图片人脸检测识别实例教程
Mar 06 Python
解决Django加载静态资源失败的问题
Jul 28 Python
Pytorch之Variable的用法
Dec 31 Python
Python找出列表中出现次数最多的元素三种方式
Feb 24 Python
Python tkinter 下拉日历控件代码
Mar 04 Python
Python基于network模块制作电影人物关系图
Jun 19 Python
九步学会Python装饰器
May 09 #Python
Python类属性与实例属性用法分析
May 09 #Python
python回调函数用法实例分析
May 09 #Python
python类和函数中使用静态变量的方法
May 09 #Python
Python实用日期时间处理方法汇总
May 09 #Python
python fabric使用笔记
May 09 #Python
Python字符串详细介绍
May 09 #Python
You might like
将RTF格式的文件转成HTML并在网页中显示的代码
2006/10/09 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
Linux环境下搭建php开发环境的操作步骤
2013/06/17 PHP
PHP ignore_user_abort函数详细介绍和使用实例
2014/07/15 PHP
ajax+php控制所有后台函数调用
2015/07/15 PHP
PHP实现时间日期友好显示实现代码
2019/09/08 PHP
jQuery.buildFragment使用方法及思路分析
2013/01/07 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
javascript中this的四种用法
2015/05/11 Javascript
JavaScript如何实现对数字保留两位小数一位自动补零
2015/12/18 Javascript
JavaScript+html5 canvas实现本地截图教程
2020/04/16 Javascript
ThinkPHP+jquery实现“加载更多”功能代码
2017/03/11 Javascript
node.js 利用流实现读写同步,边读边写的方法
2017/09/11 Javascript
JS扩展String.prototype.format字符串拼接的功能
2018/03/09 Javascript
Vue.js 父子组件通信的十种方式
2018/10/30 Javascript
JS中使用new Option()实现时间联动效果
2018/12/10 Javascript
js JSON.stringify()基础详解
2019/06/19 Javascript
UEditor 自定义图片视频尺寸校验功能的实现代码
2020/10/20 Javascript
nodeJs项目在阿里云的简单部署
2020/11/27 NodeJs
Python列表推导式的使用方法
2013/11/21 Python
python中的内置函数getattr()介绍及示例
2014/07/20 Python
Python对象属性自动更新操作示例
2018/06/15 Python
Selenium的使用详解
2018/10/19 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
2019/03/05 Python
Pytorch对Himmelblau函数的优化详解
2020/02/29 Python
浅谈CSS3 box-sizing 属性 有趣的盒模型
2019/04/02 HTML / CSS
phonegap常用事件总结(必看篇)
2017/03/31 HTML / CSS
StubHub意大利:购买和出售全球演唱会和体育赛事门票
2017/11/21 全球购物
阿迪达斯希腊官方网上商店:adidas希腊
2019/04/06 全球购物
德国Discount-Apotheke中文官网:DC德式康线上药房
2020/02/18 全球购物
乐高瑞士官方商店:LEGO CH
2020/08/16 全球购物
给学校的建议书
2014/03/12 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
2015年人事专员工作总结
2015/04/29 职场文书