Python 拷贝对象copy模块(深拷贝deepcopy与浅拷贝copy)

注意: 那些年才过的坑、随手记录一下

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

二、 copy.deepcopy 深拷贝 拷贝对象及其子对象

#!/usr/bin/python
# -*- conding:utf-8 -*-

import copy

a = {"module": {"protect": {"mode":1}, "signapk": {"mode":0, "keypass":""}}}

b = a  # 直接赋值, 传递对象的引用

c = copy.copy(a)  # 浅拷贝

d = copy.deepcopy(a)  # 深拷贝

#新增键值对
a["dex"] = 1

# 修改原值
a["module"]["protect"]["mode"] = 0

# 输出信息进行对比查看
print 'a==%s' % a

print 'b==%s' % b

print 'c==%s' % c

print 'd==%s' % d


三、结果对比

a=={'dex': 1, 'module': {'protect': {'mode': 0}, 'signapk': {'keypass': '', 'mode': 0}}}

b=={'dex': 1, 'module': {'protect': {'mode': 0}, 'signapk': {'keypass': '', 'mode': 0}}}

c=={'module': {'protect': {'mode': 0}, 'signapk': {'keypass': '', 'mode': 0}}}

d=={'module': {'protect': {'mode': 1}, 'signapk': {'keypass': '', 'mode': 0}}}

 

注意:以上内容是个人使用的随手记录, 就是介绍了下简单的使用,个人踩坑记录

欢迎大家来吐槽,准备好瓜子饮料矿泉水,开整!!!

---------------------------------------------------------------------------------------

 

搞笑一则:能动手尽量别吵吵

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章