python中的深拷贝、浅拷贝和引用赋值
当你写 b = a 时,b 并不会创建 a 的副本,而是将 b 作为一个新变量,指向 a 所指向的同一个对象。对 b 的修改会影响到 a,反之亦然,因为它们共享相同的对象。A:因为这次的a[3] = [9,8,9]改变的不是子对象,改变的是外层对象也就是id(a[3])发生了变化,深浅拷贝对原来的外层对象都进行了复制,所以不会改变,这里并不涉及子对象的更改。浅拷贝的副本和原对象共享同一个内嵌子对象,而深拷贝则创建了新的子对象实例。浅拷贝复制了对象的最外层,深拷贝则递归地复制了对象的所有子对象。
原创
2024-11-22 18:01:42 ·
180 阅读 ·
0 评论