博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
阅读量:6697 次
发布时间:2019-06-25

本文共 570 字,大约阅读时间需要 1 分钟。

Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块。

1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。

2. copy.deepcopy 深拷贝 拷贝对象及其子对象

一个很好的例子:

import copy
a = [1, 2, 3, 4, ['a', 'b']]  #原始对象
b = a  #赋值,传对象的引用
c = copy.copy(a)  #对象拷贝,浅拷贝
d = copy.deepcopy(a)  #对象拷贝,深拷贝
a.append(5)  #修改对象a
a[4].append('c')  #修改对象a中的['a', 'b']数组对象
print 'a = ', a
print 'b = ', b
print 'c = ', c
print 'd = ', d

输出结果:
a =  [1, 2, 3, 4, ['a', 'b', 'c'], 5]
b =  [1, 2, 3, 4, ['a', 'b', 'c'], 5]
c =  [1, 2, 3, 4, ['a', 'b', 'c']]
d =  [1, 2, 3, 4, ['a', 'b']]

转载于:https://www.cnblogs.com/wangcp-2014/p/4686852.html

你可能感兴趣的文章
分析数据库CitusDB:提供弹性计算能力
查看>>
国产毫米波雷达领域的领头羊,木牛科技将在明年量产77GHz汽车雷达
查看>>
IOS7.1.1真的像网上流传的那么好?没有任何问题么??
查看>>
WiFi密码分享有妙招 不必口头相传
查看>>
剖析Docker Swarm和Mesos:是什么?如何结合?有什么优势?
查看>>
李飞飞:为什么计算机视觉对机器人如此重要?
查看>>
Unity AI副总裁Danny Lange:如何用AI助推游戏行业?
查看>>
《Effective Objective-C 2.0》1、熟悉Objective-C
查看>>
用 Flask 来写个轻博客 (1) — 创建项目
查看>>
OpenSceneGraph in ActiveX by ActiveQt
查看>>
南海发展大数据产业 建设新型智慧城市
查看>>
安卓APP破解利器之FRIDA
查看>>
数据中心传输需求成以太网市场巨大推动力
查看>>
华院数据宣晓华:传统零售商转型电商需攻克大数据三关
查看>>
主打“云安全” 迅雷系帝恩思登陆新三板
查看>>
研究人员发现Office Word 0Day攻击 这个漏洞绕过了word宏安全设置 绿盟科技、McAfee及FireEye发出警告...
查看>>
Apache日志记录组件Log4j出现反序列化漏洞 黑客可以执行任意代码 所有2.x版本均受影响...
查看>>
希捷宣布出货双碟装1TB硬盘 单碟500GB上市
查看>>
MPLS服务合同到期了,是否该续签?
查看>>
物联网世界的承诺与挑战
查看>>