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爬取最好大学网大学排名
Feb 24 Python
Python统计python文件中代码,注释及空白对应的行数示例【测试可用】
Jul 25 Python
解决pandas展示数据输出时列名不能对齐的问题
Nov 18 Python
利用python3 的pygame模块实现塔防游戏
Dec 30 Python
python实现双色球随机选号
Jan 01 Python
Spring Boot中使用IntelliJ IDEA插件EasyCode一键生成代码详细方法
Mar 20 Python
了解一下python内建模块collections
Sep 07 Python
用python查找统一局域网下ip对应的mac地址
Jan 13 Python
python基础之文件处理知识总结
May 23 Python
Pandas数据类型之category的用法
Jun 28 Python
Python批量解压&压缩文件夹的示例代码
Apr 04 Python
Python线程池与GIL全局锁实现抽奖小案例
Apr 13 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
php中设置多级目录session的问题
2011/08/08 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
jQuery实现隔行背景色变色
2014/11/24 Javascript
jquery手风琴特效插件
2015/02/04 Javascript
EasyUI实现二级页面的内容勾选的方法
2015/03/01 Javascript
flash+jQuery实现可关闭及重复播放的压顶广告
2015/04/15 Javascript
原生js和jquery实现图片轮播淡入淡出效果
2015/04/23 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
JS简单判断滚动条的滚动方向实现方法
2017/04/28 Javascript
Vue.js项目部署到服务器的详细步骤
2017/07/17 Javascript
JavaScript解析任意形式的json树型结构展示
2017/07/23 Javascript
node.js+captchapng+jsonwebtoken实现登录验证示例
2017/08/17 Javascript
使用JS监听键盘按下事件(keydown event)
2019/11/07 Javascript
原生js+ajax分页组件
2020/01/30 Javascript
python2.7 json 转换日期的处理的示例
2018/03/07 Python
Python 实现删除某路径下文件及文件夹的实例讲解
2018/04/24 Python
对python的unittest架构公共参数token提取方法详解
2018/12/17 Python
在notepad++中实现直接运行python代码
2019/12/18 Python
详解Python多线程下的list
2020/07/03 Python
Java爬虫技术框架之Heritrix框架详解
2020/07/22 Python
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
UNIX操作系统结构由哪几部分组成
2016/02/17 面试题
美术师范毕业生自荐信
2013/11/16 职场文书
男方父母证婚词
2014/01/12 职场文书
银行员工辞职信范文
2014/01/20 职场文书
中专毕业生个人职业生涯规划
2014/02/19 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
预防艾滋病宣传标语
2014/06/25 职场文书
2014年社区居委会主任重阳节讲话稿
2014/09/25 职场文书
2015年小学生国庆节演讲稿
2015/07/30 职场文书
学校2016年九九重阳节活动总结
2016/04/01 职场文书
成本低的5个创业项目:投资小、赚钱快
2019/08/20 职场文书
JS数组去重详情
2021/11/07 Javascript
Python何绘制带有背景色块的折线图
2022/04/23 Python
使用Nginx的访问日志统计PV与UV
2022/05/06 Servers