python 深拷贝、浅拷贝

深拷贝:

例1:

import copy

a = [1,2,3]

c = copy.deepcopy(a)

例2:

a = [11,22,33]

b = [44,55,66]

c = [a,b]

d = copy.deepcopy(c)

例3:

a = [1,2]

b = [3,4]

c = [a,b]

d = copy.copy(c)

注意:使用copy模块的copy功能时,他会根据当前拷贝的数据类型是否为可变类型有不同的处理方式

此时d是[a的引用,b的引用] copy只拷贝第一层

此时深拷贝d里面是[[11,22,33],[44,55,66]]

深拷贝是递归拷贝

浅拷贝:例

(把a变量的指向的地址给过去)

a = [1,2,3]

b = a

 

posted on 2020-04-29 00:07  pooopun  阅读(157)  评论(0编辑  收藏  举报

导航