python里的浅拷贝与深拷贝
以列表为例,浅拷贝会新生成一个内存地址,来存放被拷贝变量的值,两者id是不一样的,但它内部的子元素全部都是引用传递,假如有可变类型的子元素,比如说列表嵌套一个列表,这个子元素列表变化,被拷贝的变量也会跟着变化,反过来也一样。
而深拷贝,它也会新生成一个内存来存放变量的值,理论上包括子元素,也全部重新生成,但实际上,对于不可变子元素,依然是引用传递,包括元组,不过正因为是不可变类型,所以并不会影响到被拷贝变量,可变类型重新生成。
python里的浅拷贝与深拷贝
最新推荐文章于 2024-07-29 14:37:54 发布