前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python深浅copy

Python深浅copy

作者头像
py3study
发布2020-01-14 12:19:55
5710
发布2020-01-14 12:19:55
举报
文章被收录于专栏:python3

深copy和浅copy


深copy:不仅copy变量的指针,还copy指针指向的数据

这里需要提到一个新名词,指针:变量和内存中数据的一种引用关系。变量通过指针对应到内存中的数据

Python深浅copy
Python深浅copy

在列表、元组、字典、集合中可以使用深copy

代码语言:javascript
复制
list=[1,2,3];

copy的作用是将列表拷贝出一份

代码语言:javascript
复制
newlist=list.copy();
>>>print(list);
[1,2,3]
>>>print(newlist);
[1,2,3]

如果修改newlist中的某一个元素,不会影响到list列表中本来的的元素(深copy)

代码语言:javascript
复制
>>>newlist[2]='hehe';
>>>print(list)
[1,2,3]
>>>print(newlist)
[1,2,hehe]

浅copy:只copy了指针(一份内存的引用),而在内存中保存的数据,还是仅仅只有一份

Python深浅copy
Python深浅copy

在列表、元组、字典出现copy操作的时候会发生浅copy

代码语言:javascript
复制
>>>lists=[[1,2,3],3,4];
>>>newlists=lists.copy();
>>>print(newlists)
[[1,2,3],3,4]

改变newlists中元素的时候,如果修改,那么会影响到lists

代码语言:javascript
复制
>>>newlists[0][2]='hiahia';
>>>print(lists)
>>>[[1, 2, 'hiahia'], 3, 4]
>>>print(newlists)
>>>[[1, 2, 'hiahia'], 3, 4]
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 深copy和浅copy
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档