编程语言
首页 > 编程语言> > python中深拷贝和浅拷贝有什么区别

python中深拷贝和浅拷贝有什么区别

作者:互联网

结论一. 单层拷贝,不考虑嵌套的情况下
不管深浅拷贝对于不可变类型来说都是引用复制,引用相同的内存地址。
不管深浅拷贝对于可变类型来说都会创建新的内存空间

结论二. 多层的情况下
浅拷贝:
1.外层是不可变类型,不管内层是否可变都是引用拷贝
2.外层是可变类型,不管内层是否可变都会创建新的内存空间
深拷贝:
1.外层是不可变类型,会递归判断内层的数据类型,如果可变则创建新的内存地址、都为不可变就是引用拷贝
2.外层是可变数据类型,不管内层是否可变都会创建新的内存地址,但是内部如果为可变则递归创建,不可变则为引用地址。

标签:外层,python,内层,中深,引用,可变,拷贝,内存地址
来源: https://www.cnblogs.com/nixxxxx1997/p/14341043.html