Python深浅copy
短信预约 -IT技能 免费直播动态提醒
深copy和浅copy
深copy:不仅copy变量的指针,还copy指针指向的数据
这里需要提到一个新名词,指针:变量和内存中数据的一种引用关系。变量通过指针对应到内存中的数据
在列表、元组、字典、集合中可以使用深copy
list=[1,2,3];
copy的作用是将列表拷贝出一份
newlist=list.copy();
>>>print(list);
[1,2,3]
>>>print(newlist);
[1,2,3]
如果修改newlist中的某一个元素,不会影响到list列表中本来的的元素(深copy)
>>>newlist[2]='hehe';
>>>print(list)
[1,2,3]
>>>print(newlist)
[1,2,hehe]
浅copy:只copy了指针(一份内存的引用),而在内存中保存的数据,还是仅仅只有一份
在列表、元组、字典出现copy操作的时候会发生浅copy
>>>lists=[[1,2,3],3,4];
>>>newlists=lists.copy();
>>>print(newlists)
[[1,2,3],3,4]
改变newlists中元素的时候,如果修改,那么会影响到lists
>>>newlists[0][2]='hiahia';
>>>print(lists)
>>>[[1, 2, 'hiahia'], 3, 4]
>>>print(newlists)
>>>[[1, 2, 'hiahia'], 3, 4]
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341