Python字典方法copy()和deepcopy()的区别
2014-06-15 15:54
603 查看
from copy import deepcopy # import deepcopy模块 d = {} d['name'] = ['black', 'guts'] # d = {'name': ['black', 'guts']} c = d.copy() # c = {'name': ['black', 'guts']} dc = deepcopy(d) # dc = {'name': ['black', 'guts']} d['name'].append('white')
在这之后,d,c,dc 的值分别如下:
>>> d
{'name': ['black', 'guts', 'white']}
>>> c
{'name': ['black', 'guts', 'white']}
>>> dc
{'name': ['black', 'guts']}
故 c = d.copy()作为浅复制,只是新建了 c 指向 d,本质上并没有拷贝出一个新的dict,c 和 d 引用同一个dict,无论改变 c 或 d,两者都会改变。而 dc = deepcopy(d) 则创建了一个新的字典赋给了 dc。
本文参考了http://www.cnblogs.com/chengxuyuanxiaowang/p/3784789.html (作者:程序员小王),在此对作者表示感谢。
相关文章推荐
- Python中字典的增、删、创建、索引与字典方法clear,copy,formkeys,get,has_key,popitem,update
- 从python中copy与deepcopy的区别看python引用
- Python---copy()、deepcopy()与赋值的区别
- python 中copy和deepcopy的区别
- Python中deepcopy 和copy的区别
- 从python中copy与deepcopy的区别看python引用
- Python中 copy, deepcopy 的区别
- python中列表,元祖,字典,集合区别和使用方法
- Python-copy()与deepcopy()区别
- Python中copy和deepcopy的区别,以及编程实现deepcopy的功能
- Python中的引用,copy和deepcopy的区别
- Python copy与deepcopy的区别
- 1.Python浅复制和深复制——copy和deepcopy方法
- 01-Python-copy()与deepcopy()区别
- 从python中copy与deepcopy的区别看python引用
- Python-copy()与deepcopy()区别
- Python中字典的copy方法总结
- Python copy()与deepcopy()区别,深拷贝与浅拷贝
- Python中copy()和deepcopy()的区别
- Python---copy()、deepcopy()与赋值的区别