开始
这个不多说,直接代码解释
a=[[1,2],3,4]
print(a)
b=a #把a的地址复制到b,a,b两共享内存空间
b[0][1]=9 #改b即是改a
print(a,b)
c=a.copy() #开辟了一个新内存空间,简单类型的内容复制,列表等复杂类型复制地址过去
c[0][1]=99 #列表因在内存中是映射过去的,所有改c就是改a
c[1]=2 #c[1]内是写数字,不可变类型,是内容复制,对a无影响
print(a,c)
import copy
d=copy.deepcopy(a) #所有内容复制,全新的内容
d[0][1]=88 #改d是在新位置改,不影响a
print(a,d)
执行结果:
总结:
注意可变数据类型与不可变数据类型在内存中的操作过程就可以了。