深淺拷貝
a = [1,[2,3]]
b = a #直接賦值,就是完全引用,a,b共享
c = a[:] #淺拷貝,形成新的
d = list(a)
a[0] = "A"
print(id(a[0]),id(b[0]),id(c[0]),id(d[0])) #前兩個地址一樣,後兩個地址一樣
#複合結構對象
a = [1,[2,3]]
b = a
c = a[:] #淺拷貝,複雜元素,直接拿來用
d = list(a)
e = copy.deepcopy(a) #深拷貝
a[1][0] = "change"
print(id(a[1][0]),id(b[1][0]),id(c[1][0]),id(d[1][0]))
#深拷貝:打印id可知,全部形成新對象
#直接賦值 = 完全引用
#淺拷貝 = 簡單元素(不包含子元素)進行拷貝形成新對象,複雜元素(包含子元素)拿來引用,不生成新對象