美文网首页
高级二.深浅copy

高级二.深浅copy

作者: 依旧丶森 | 来源:发表于2017-11-15 20:19 被阅读19次

    1.  ==,is的使用

    2.拷贝

                 2.1 浅拷贝与深拷贝

                            浅拷贝是对于一个对象的顶层拷贝通俗的理解是:

            拷贝了引用,并没有拷贝内容;(浅层无关,深层与原数据有关联)

                                    深拷贝是对于一个对象所有层次的拷贝(递归)。(与原来数据没任何一点关系)

                深浅拷贝对比:

             1.单层对比,没任何区别。

     2.深层对比,有区别。原数据第一层变化对深浅copy无任何影响,

          但原数据的深层次数据改变对浅copy有影响,浅copy会随原数据变化, 而原数据变化对深copy无影响。

      3.元组的深浅拷贝

                       1.单元组  如 a=(1,2,3) 深浅copy的其他指针(b,c)的地址(id)与a的id一样   (因为元组不可更改) 

                       2.元组内部有其他可更改的数据   如  a=(1,2,3,[11,22,33])     浅copy的指针(b)的地址(id)与a的一样, (因为浅copy只有第一层不随原数据变化,而更深层的数据随原数据变化,所以地址不变)

     深copy的指针(c)的地址(id)与a的不一样,(因为深copy的深层数据不会随原数据变化,所以地址变化)

    相关文章

      网友评论

          本文标题:高级二.深浅copy

          本文链接:https://www.haomeiwen.com/subject/liihvxtx.html