数据复制时,会涉及到浅拷贝与深拷贝,简单理解就是
浅拷贝:两个数据变量复制后指向同一个内存地址;
深拷贝:两个数据变量复制后指向了不同的内容地址;
>>> a=[3,2] >>> id(a) 32495952 >>> b=a >>> id(b) #a,b变量的地址相同 32495952 >>> b[0]=1 >>> a #对b变量的改变同时也是对a变量的操作 [1, 2] >>> import copy >>> b=copy.deepcopy(a) #深拷贝命令 >>> id(b) #拷贝后指向了新的内存地址 140261733704480 >>> b [1, 2] >>> a #import前对b变量的改变后导致a,b=[1, 2] [1, 2] >>> b[0]=9 >>> b #此时对变量b的操作不会影响变量a的值 [9, 2] >>> a [1, 2]