深拷贝 浅拷贝

2017-09-05  本文已影响0人  一秆子数码

1.先了解 == ,is 的使用:

    a is b   --->判断a和b是否指向的同一块内存空间,是比较两个引用是否指向同一个对象(地址引用比较)。

    a == b --->判断a和b指向的空间里的内容是否一样,是比较两个对象是否相等。(比较的是数值)

2.深拷贝、浅拷贝

    2.1  浅拷贝:

        可以理解为拷贝了引用,即栈的数据地址,并没有拷贝堆的实质内容

    2.2  深拷贝:

        可以理解为把堆里面的内容直接拷贝过去。


3.python中两个相同的数在(-5~256)之间,是相同的内存

4.copy中有一个浅层copy,一个深层deepcopy,deepcopy中,数据绝不改变,浅层copy中,迭代的数据可改变,不迭代的仍不改变

5.元组比较特殊,属于常亮。深copy,浅copy,元组的地址一样。当有【】或者其他集合,deepcopy地址不一样

上一篇下一篇

猜你喜欢

热点阅读