浅拷贝和深拷贝

浅拷贝和深拷贝

作者:LAMP小白  点击:2196  发布日期:2013-10-22 23:52:37  返回列表

Python对内存的使用浅拷贝和深拷贝

变量是没有类型之分的,类型取决与赋给他的值

所谓的浅拷贝就是为对象建立一个新的地址空间,但数据还是指向同样的地址空间

深拷贝就是把对象和数据都拷贝到一个不同的地址空间

浅拷贝

import copy

c = copy.copy(a)

只是拷贝了父对象,但数据的地址是不变的

深拷贝

copy.deepcopy()


#!/usr/bin/python
#coding:utf8
import copy
a = [1,2,3,4,5]
b = a
print id(a)
print id(b)
c = copy.copy(a)
print id(a)
print id(c)
print id(a[0])
print id(c[0])
d = copy.deepcopy(a)
d[0] = 100
print id(a[0])
print id(c[0])
print id(d[0])
print a
print c
print d




上一篇:多重匹配 下一篇:快递查询API
0