Python-8 深拷贝和浅拷贝

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-8 深拷贝和浅拷贝相关的知识,希望对你有一定的参考价值。

  1. 浅拷贝

浅拷贝是对于一个对象的顶层拷贝
通俗的理解是:拷贝了引用,并没有拷贝内容

技术分享图片

  1. 深拷贝

深拷贝是对于一个对象所有层次的拷贝(递归)

技术分享图片

进一步理解拷贝

技术分享图片

  1. 拷贝的其他方式

使用copy模块copy功能时,它会根据当前拷贝的数据类型是可变还是不可变类型有不同的处理方式。

下图中c是可变的列表,使用copy模块的copy功能时,e和c是并不是指向的同一地址。
技术分享图片

而当c为不可变的元组时,e和c指向的是同一地址。
技术分享图片

以上是关于Python-8 深拷贝和浅拷贝的主要内容,如果未能解决你的问题,请参考以下文章

深拷贝和浅拷贝的区别?

深拷贝和浅拷贝怎样理解(通俗具体点儿)

如何实现数组深拷贝和浅拷贝?

python的复制,深拷贝和浅拷贝的区别

什么是深拷贝和浅拷贝以及如何实现深拷贝

深拷贝和浅拷贝的区别 & 如何实现深拷贝和浅拷贝