浅拷贝:copy.copy
深拷贝:copy.deepcopy
在Python中,变量名只是指向一处内存地址,如a=[1,2],a仅仅是指向[1,2]这个列表所在的内存,当b=a时,b也是指向这个列表的内存,即:id(a)=id(b)。但是在copy中,浅拷贝,如:a=[1,2],b=[3,4],c=[a,b]中,d=copy.copy©,d是在内存中重新开辟一块空间来存放数据,但深拷贝与浅拷贝不同之处在于,浅拷贝只是拷贝了a,b的链接,其可以指向a,b列表实际的存储空间,但是深拷贝则是直接将a,b数据给拷贝到自己的空间中。
举个例子来说,浅拷贝就想拷贝了一个网站的网址到自己的文件夹中,可以随时通过这个网址来查看网站的内容,当网站的内容发生改变时,文件夹通过网址所查看的内容也发生改变。深拷贝则是直接将网站里的内容下载到自己的文件夹中,只要自己不对文件夹里的内容进行修改,其内容就不会自动改变、
Python下的copy
最新推荐文章于 2022-08-30 09:16:12 发布