码迷,mamicode.com
首页 > 编程语言 > 详细

python浅拷贝深拷贝

时间:2015-08-17 00:51:49      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:

copy_list=list[:]  得到的是浅拷贝,即只能顶层拷贝,里面的嵌套不会复制一份。

 

深拷贝方法如下:

import copy
a = [0, [1, 2], 3]
b = copy.deepcopy(a)
a[0] = 8
a[1][1] = 9

 

int,float,long,str,tuple为不可变对象

list,set,dict为可变对象

不可变对象指的是值的不可变,所以它的每一次操作都会重建对象

打个比方:

a=1
a=2

 这里虽然看上去a的值可以改变,但其实是创建了一个新的对象2,然后将a的标签贴到这个2的对象上,原来那个1还在那里等待垃圾回收。

python浅拷贝深拷贝

标签:

原文地址:http://www.cnblogs.com/gdjdsjh/p/4735325.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!