python 对象拷贝, 值相同,同一对象的区别

python 对象拷贝

小例奉上:

      python 对象拷贝, 值相同,同一对象的区别_第1张图片

    可以看出,赋值号“=”是引用,即a 和 b 是指向一个对象。

    如何实现对象的拷贝呢,python 有 copy模块。

用法:import copy

              对象2 = copy.copy(对象1)

例子:

            python 对象拷贝, 值相同,同一对象的区别_第2张图片

问题:

           python 对象拷贝, 值相同,同一对象的区别_第3张图片

     可以看出:copy 可以实现浅层拷贝,可以通过copy.deepcoppy()来实现深层拷贝。

例如上例:

          python 对象拷贝, 值相同,同一对象的区别_第4张图片

判断是否是一个对象: is

          python 对象拷贝, 值相同,同一对象的区别_第5张图片

    "b  = a" 是引用 指向的一个对象,所以 a is b  返回 True

     "c = copy.copy(a)" c是a的拷贝,不是指向一个对象,返回False 

判断是否值相同: ==

          python 对象拷贝, 值相同,同一对象的区别_第6张图片

你可能感兴趣的:(python 对象拷贝, 值相同,同一对象的区别)