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 相关文章推荐
Python3 循环语句(for、while、break、range等)
Nov 20 Python
mac系统安装Python3初体验
Jan 02 Python
cmd运行python文件时对结果进行保存的方法
May 16 Python
基于DATAFRAME中元素的读取与修改方法
Jun 08 Python
对Python w和w+权限的区别详解
Jan 23 Python
linux环境下Django的安装配置详解
Jul 22 Python
Python 取numpy数组的某几行某几列方法
Oct 24 Python
Python PIL库图片灰化处理
Apr 07 Python
Python Django中间件使用原理及流程分析
Jun 13 Python
opencv实现图像几何变换
Mar 24 Python
python自动化之如何利用allure生成测试报告
May 02 Python
Python用tkinter实现自定义记事本的方法详解
Mar 31 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
深入PHP异步执行的详解
2013/06/03 PHP
CodeIgniter框架钩子机制实现方法【hooks类】
2018/08/21 PHP
CI框架网页缓存简单用法分析
2018/12/26 PHP
编写高效jQuery代码的4个原则和5个技巧
2014/04/24 Javascript
关于JavaScript中name的意义冲突示例介绍
2014/05/29 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
2014/06/13 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
jstl中判断list中是否包含某个值的简单方法
2016/10/14 Javascript
URL中“#” “?” &“”号的作用浅析
2017/02/04 Javascript
PHP实现本地图片上传和验证功能
2017/02/27 Javascript
Angular.js中处理页面闪烁的方法详解
2017/03/09 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
详解ECMAScript6入门--Class对象
2017/04/27 Javascript
node简单实现一个更改头像功能的示例
2017/12/29 Javascript
Nuxt.js实战详解
2018/01/18 Javascript
Vue.js实现图片的随意拖动方法
2018/03/08 Javascript
11个教程中不常被提及的JavaScript小技巧(推荐)
2019/04/17 Javascript
Jquery异步上传文件代码实例
2019/11/13 jQuery
JS面向对象编程基础篇(三) 继承操作实例详解
2020/03/03 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
在vue项目中promise解决回调地狱和并发请求的问题
2020/11/09 Javascript
深入解析Python中的lambda表达式的用法
2015/08/28 Python
Python爬虫之pandas基本安装与使用方法示例
2018/08/08 Python
在Python 字典中一键对应多个值的实例
2019/02/03 Python
Django框架模型简单介绍与使用分析
2019/07/18 Python
python实现超市商品销售管理系统
2019/10/25 Python
解决pytorch 数据类型报错的问题
2021/03/03 Python
法国购买隐形眼镜和眼镜网站:Optical Center
2019/10/08 全球购物
Perfume’s Club英国官网:购买香水和护肤品
2019/11/02 全球购物
方法名是否可以与构造器的名字相同
2012/06/04 面试题
大学生村官典型材料
2014/01/12 职场文书
学校大课间活动方案
2014/01/30 职场文书
公司年会抽奖活动主持词
2014/03/31 职场文书
毕业班班主任工作总结2015
2015/07/23 职场文书
2016暑期政治学习心得体会
2016/01/23 职场文书
MySQL优化之慢日志查询
2022/06/10 MySQL