python 复制 浅copy 深copy 的区别

python 复制 浅copy 深copy 的区别,第1张

概述1.浅copy:   外层添加元素时, 浅拷贝c不会随原列表a变化而变化;内层list添加元素时,浅拷贝c才会变化。2.深copy:   无论原列表a如何变化,深拷贝d都保持不变。3.赋值:    赋值对象随着原列表一起变化    深拷贝:只有一种形式,copy模块中的deepcopy函数。      和浅拷贝对应,深拷贝拷贝了对象的所有元素,包括多层嵌套的元素。      深拷贝出来的对
1.浅copy:   外层添加元素时, 浅拷贝c不会随原列表a变化而变化;内层List添加元素时,浅拷贝c才会变化。2.深copy:   无论原列表a如何变化,深拷贝d都保持不变。3.赋值:    赋值对象随着原列表一起变化

   深拷贝:只有一种形式,copy模块中的deepcopy函数。
     和浅拷贝对应,深拷贝拷贝了对象的所有元素,包括多层嵌套的元素。
     深拷贝出来的对象是一个全新的对象,不再与原来的对象有任何关联。

import copya = [1,2,3,4,5,[a,b],6]b = ac =copy.copy(a)d = copy.deepcopy(a)a.append(7)print(a)    #新增一个7print(b)    #新增一个7print(c)    #浅copy 不变print(d)    #深copy不变print(~~~~~~)a[5].append(c)print(a)print(b)print(c)print(d)

 

/usr/local/bin/python3.7 "/code/赋值 浅copy 深copy.py"
[1,[‘a‘,‘b‘],6,7]
[1,6]
[1,6]
~~~~~~
[1,‘b‘,‘c‘],6]

Process finished with exit code 0

总结

以上是内存溢出为你收集整理的python 复制 浅copy 深copy 的区别全部内容,希望文章能够帮你解决python 复制 浅copy 深copy 的区别所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1190759.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存