关于python中copy的浅复制与深复制

2020-04-17  本文已影响0人  满满当当_aebf

引入例子

importcopya=[1,2,3,4,['a','b']]b=ac=copy.copy(a)d=copy.deepcopy(a)a.append(5)a[4].append('c')

b=a:引用b与a共享一个值a若变则b变,反之同理

c:浅复制只会拷贝父对象,父对象中的子对象不会拷贝,若子对象变则会导致改变,若改变父对象不会改变

d:深拷贝完全拷贝a与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']]

上一篇 下一篇

猜你喜欢

热点阅读