其他分享
首页 > 其他分享> > ~~做过的好玩的题~~

~~做过的好玩的题~~

作者:互联网

深浅copy


import copy

a = [1, 2, 3, 4, ['a', 'b']]
b = a                 # 引用,除非直接给a重新赋值,否则a变则b变,b变则a变
c = copy.copy(a)      # 浅复制,只会拷贝父对象, 不会拷贝父对象中的子对象,所以若a的子对象变则c 变,但是父对象变c不会变
d = copy.deepcopy(a)  # 深拷贝,完全拷贝,完全独立于原对象,a变也不变
a.append(5)           # 改变父对象
a[4].append('c')      # 改变父对象中的 ['a', 'b']子对象

'''
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']] 
'''

标签:对象,做过,变则,deepcopy,拷贝,copy,好玩,append
来源: https://www.cnblogs.com/jevious/p/11143258.html