- 博客(2)
- 收藏
- 关注
原创 python中浅拷贝和深拷贝的区别
在浅拷贝时,拷贝出来的新对象的地址和原对象是不一样的,但是新对象里面的可变元素(如列表)的地址和原对象里的可变元素的地址是相同的,也就是说浅拷贝它拷贝的是浅层次的数据结构(不可变元素),对象里的可变元素作为深层次的数据结构并没有被拷贝到新地址里面去,而是和原对象里的可变元素指向同一个地址,所以在新对象或原对象里对这个可变元素做修改时,两个对象是同时改变的,但是深拷贝不会这样,深拷贝是将原对象里面的可变元素和不可变元素重新打印一份并重新分配地址,这个是浅拷贝相对于深拷贝最根本的区别。举例说明。
2023-04-02 09:58:21 108 1
原创 可变对象与不可变对像的区别
与C语言和c++不同的是在C语言和c++中a=3的意思是对a进行赋值预算使得a=3在 Python 中,一切皆为对象Python 中不存在值传递,一切传递的都是对象的引用,也可以认为是传址a=3相当于在内存中存了两个值a和3的地址而a=3相当对是a引用3这个值。
2023-04-02 09:25:14 227 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人