关键词:浅拷贝、深拷贝、元组不可变类型不可拷贝(除非元组指向可变 c = (a, b)类型则可以深拷贝,仍不可浅拷贝)
# 当一个变量a=xxx的时候,约定为 这个a是指向了这个xxx
a = [11, 22]
# 完成浅拷贝copy.copy()
# 完成深拷贝copy.deepcopy()
import copy
a = [11, 22]
b = [33, 44]
c = [a, b]
d = c
e = copy.copy(c) # 浅拷贝 只拷贝c里面的东西,c里面的a和b指向的数据不拷贝
f = copy.deepcopy(c) # 深拷贝 拷贝c里面的包括a,b指向的数组
# copy拷贝元组 浅拷贝无法拷贝,仅仅是指向,因为元组是不可变类型
# 深拷贝:c = (a, b) 如果元组里有指向的可变数据,这可以深拷贝(仍然无法浅拷贝)
c.append(55)
a.append(66)
print('c的值为:%s id为:%d' % (c, id(c)))
print('d的值为:%s id为:%d' % (d, id(d)))
print('e的值为:%s id为:%d' % (e, id(e)))
print(id(c))
print(id(c[0]))
print(id(e[0]))
print(id(f[0]))