Python 深浅拷贝

Python的深拷贝和浅拷贝都是对象的拷贝,都会生成一个看起来相同的对象,但本质的区别是拷贝的是对象的地址还是对象值的区别

 

可变对象与不可变对象的区别

  可变对象:一个对象在不改变其所指向的地址前提下,可以修改其所指向的地址中的值

  不可变对象:一个对象的值被改变了,那么原指向的地址就会发生变化,修改后的对象有新的地址

 

浅拷贝:拷贝可变元素(如,列表),当旧对象中的list发生对象,新对象的list也会发生变化,即新旧对象中的可变元素地址 是一样的

深拷贝:拷贝可变元素,深拷贝后,旧对象改变可变元素,新对象中的可变元素不会发生变化,即新旧对象没有 了关联

  ps:深浅拷贝通常只在列表嵌套列表时讨论

      

 

 

  

posted @ 2022-01-21 16:01  哩子吖  阅读(53)  评论(0)    收藏  举报