Python

Python中“=”和深浅拷贝区别

2016-11-30  本文已影响11人  戏之地

= 赋值:内存中只存在一个

a1指向了内存,a1相当于对内存中该对象的引用。
直接把该引用赋值对b1,相当于b1直接指向内存对象

a1 = [1, 2, 3, ["a", "b"]]
b1 = a1

拷贝 : 内存中存在两个

浅拷贝

浅拷贝只拷贝原本各元素在内存中的地址:

深拷贝

深拷贝对于不可变元素,和浅拷贝相同,拷贝引用
对于可变元素,深拷贝和复制一份,原副本对可变元素的修改皆不会影响另外一个


深拷贝
上一篇 下一篇

猜你喜欢

热点阅读