浅拷贝
拷贝内存地址,拷贝出来的值指向同一个内存地址(拷贝了引用,并没有拷贝内容)
深拷贝
深拷贝是对于一个对象所有层次的拷贝(递归)
a = [11,22,33]
b = a #浅拷贝 指向同一个内存地址。
print(id(a) == id(b)) #True
print(id(a))
print(id(b))
import copy
#深拷贝 内容相同,但重新开辟一个新内存,内存地址不同。
c = a.copy()
print(id(a) == id(c)) #False
print(id(a))
print(id(c))
import copy
a = [11, 22, 33]
b = [55, 44]
c = [a, b]
print(c,"--->c") # [[11, 22, 33], [55, 44]] --->c
a.append(66)
print(c,"--->c") #[[11, 22, 33, 66], [55, 44]] --->c
d = copy.deepcopy(c)
print(d,"--->d") #[[11, 22, 33, 66], [55, 44]] --->d
b.append(666)
print(d,"--->d") #[[11, 22, 33, 66], [55, 44]] --->d