Python中字典的浅拷贝与深拷贝用法实例分析


Posted in Python onJanuary 02, 2018

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

最近发现的一个很值得记录的东西就是python字典的浅拷贝问题

首先,明确一下什么是浅拷贝,什么是深拷贝:

简单的来说就是,在有指针的情况下,浅拷贝只是增加了一个指针指向已经存在的内存,而深拷贝就是增加一个指针并且申请一个新的内存,使这个增加的指针指向这个新的内存

也就是说,在浅拷贝情况下,不同引用指向的是同一块内存,改其中一个引用,那么其他引用也会跟着改变

应用到python 的字典复制过程:

# coding: utf-8
import copy
dict ={"a":"apple","o":"orange"}
dict1 = dict
dict2 = copy.copy(dict)
dict3 = copy.deepcopy(dict)
print "三水点靠木测试结果:"
print dict1
print dict2
print dict3
dict["a"]="watermelon"
print dict1
print dict2
print dict3

运行结果:

Python中字典的浅拷贝与深拷贝用法实例分析

说明直接赋值是一种浅拷贝方式,而后两种是深拷贝方式

有的地方说copy.copy是浅拷贝,经我的验证它也是深拷贝,不知道是不是python的版本问题

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

Python 相关文章推荐
Python def函数的定义、使用及参数传递实现代码
Aug 10 Python
Python中的闭包总结
Sep 18 Python
Python操作串口的方法
Jun 17 Python
python使用arcpy.mapping模块批量出图
Mar 06 Python
Numpy数组的保存与读取方法
Apr 04 Python
python pycurl验证basic和digest认证的方法
May 02 Python
softmax及python实现过程解析
Sep 30 Python
利用Pytorch实现简单的线性回归算法
Jan 15 Python
python3通过qq邮箱发送邮件以及附件
May 20 Python
Python调用C/C++的方法解析
Aug 05 Python
python3.9和pycharm的安装教程并创建简单项目的步骤
Feb 03 Python
Pycharm 如何设置HTML文件自动补全代码或标签
May 21 Python
python+matplotlib绘制简单的海豚(顶点和节点的操作)
Jan 02 #Python
Python实现进程同步和通信的方法
Jan 02 #Python
mac系统安装Python3初体验
Jan 02 #Python
Python中static相关知识小结
Jan 02 #Python
python tensorflow基于cnn实现手写数字识别
Jan 01 #Python
python+selenium实现163邮箱自动登陆的方法
Dec 31 #Python
python 类对象和实例对象动态添加方法(分享)
Dec 31 #Python
You might like
东方红 - 来复式再生机的修复
2021/03/02 无线电
多文件上传的例子
2006/10/09 PHP
PHP生成月历代码
2007/06/14 PHP
php xml 入门学习资料
2011/01/01 PHP
探讨:如何使用PhpDocumentor生成文档
2013/06/25 PHP
php获取根域名方法汇总
2014/10/28 PHP
php源码分析之DZX1.5字符串截断函数cutstr用法
2015/06/17 PHP
Discuz!X中SESSION机制实例详解
2015/09/23 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
javascript 特性检测并非浏览器检测
2010/01/15 Javascript
JQuery获取样式中的background-color颜色值的问题
2013/08/20 Javascript
JavaScript自定义事件介绍
2013/08/29 Javascript
Javascript实现带关闭按钮的网页漂浮广告代码
2014/01/12 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
2014/08/18 Javascript
表单验证正则表达式实例代码详解
2015/11/09 Javascript
JavaScript循环_动力节点Java学院整理
2017/06/28 Javascript
Vue实现typeahead组件功能(非常靠谱)
2017/08/26 Javascript
jQuery实现文件编码成base64并通过AJAX上传的方法
2018/04/12 jQuery
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
[10:14]2018DOTA2国际邀请赛寻真——paiN Gaming不仅为自己而战
2018/08/14 DOTA
初步认识Python中的列表与位运算符
2015/10/12 Python
Python实现批量压缩图片
2018/01/25 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
基于python进行抽样分布描述及实践详解
2019/09/02 Python
基于python和flask实现http接口过程解析
2020/06/15 Python
js正则匹配markdown里的图片标签的实现
2021/03/24 Javascript
《画风》教学反思
2014/04/16 职场文书
优秀德育工作者事迹材料
2014/05/07 职场文书
诚信考试标语
2014/06/24 职场文书
违反交通安全法检讨书
2014/10/24 职场文书
员工试用期转正自我评价
2015/03/10 职场文书
2016元旦文艺汇演主持词
2015/07/06 职场文书
活动简报范文
2015/07/22 职场文书
《自己的花是让别人看的》教学反思
2016/02/19 职场文书
MySQL令人咋舌的隐式转换
2021/04/05 MySQL