Python里的拷贝

Posted cekong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python里的拷贝相关的知识,希望对你有一定的参考价值。

可变数据类型:list、dict
不可变数据类型:int、float、string、tuple

引用 https://github.com/taizilongxu/interview_python#4-urllib%E5%92%8Curllib2%E7%9A%84%E5%8C%BA%E5%88%AB
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‘]]














以上是关于Python里的拷贝的主要内容,如果未能解决你的问题,请参考以下文章

Python里的拷贝

Python里的拷贝=====》很容易错误的

python理解python里的赋值引用拷贝及作用域内存管理垃圾回收

python深拷贝和浅拷贝的区别

python深浅拷贝

python浅拷贝和深拷贝