py深拷贝为什么子对象的id仍相同?
有教程上说:
深度拷贝会递归地拷贝原对象中的每一个子对象,因此拷贝后的对象和原对象互不相关。
但这里好像证明这句话不对, 是什么原因呢?
回答:
这不是深拷贝的问题,是字符串的问题……
py 中有字符串池的概念(与 Java 中字符串常量池概念类似),为了节省内存、提高性能,重复定义值相同、长度较短的字符串不会重复分配内存空间。
具体原理你可以自行搜索 “py 字符串驻留机制”。
回答:
py中的字符串对象是不可变的,没有深拷贝这一说。
以上是 py深拷贝为什么子对象的id仍相同? 的全部内容, 来源链接: utcz.com/a/158324.html