Python浅拷贝与深拷贝用法实例
发布时间:2020-12-16 21:03:06 所属栏目:Python 来源:网络整理
导读:本篇章节讲解Python浅拷贝与深拷贝用法。供大家参考研究。具体分析如下: person=['name',['savings',100]] hubby=person[:] wifey=list(person) [id(x) for x in person,hubby,wifey][3074051788L,3074061740L,3074061996L] [id(y) for x in person
本篇章节讲解Python浅拷贝与深拷贝用法。分享给大家供大家参考。具体分析如下: >>> person=['name',['savings',100]] >>> hubby=person[:] >>> wifey=list(person) >>> [id(x) for x in person,hubby,wifey] [3074051788L,3074061740L,3074061996L] >>> [id(y) for x in person,wifey for y in x] [3074319552L,3073979916L,3074319552L,3073979916L] >>> hubby[0]='joe' >>> wifey[0]='jane' (['joe',100]],['jane',['name',100]]) >>> hubby[1][1]=70 >>> hubby,wifey,person (['joe',70]],70]]) 浅拷贝,创造了新的对象,但是它的对象引用确和被拷贝对象一致。 如果被拷贝对象的构成元素是不可变类型,则拷贝对象对这个元素的改变,实际上是创造一个新的对象。 如果被拷贝对象的构成元素是可变类型,则拷贝对象对这个元素的改变,实际上是在原对象的内存空间上修改这个内存空间里面的内容。 这样,才有hubby[1][1]=70会导致wifey,person相应值的改变。 希望本文所述对大家的Python程序设计有所帮助。 您可能感兴趣的文章:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |