当前位置: 首页 > news >正文

信游天下网站建设太原百度关键词优化

信游天下网站建设,太原百度关键词优化,WordPress查询管理员记录,wordpress分类目录前言 本文主要介绍了python中容易面临的考试点和犯错点,即浅拷贝与深拷贝 首先,针对Python中的可变对象来说,例如列表,我们可以通过以下方式进行浅拷贝和深拷贝操作: import copya [1, 2, 3, 4, [a, b]]b a …

前言

本文主要介绍了python中容易面临的考试点和犯错点,即浅拷贝与深拷贝

首先,针对Python中的可变对象来说,例如列表,我们可以通过以下方式进行浅拷贝和深拷贝操作:

import copya = [1, 2, 3, 4, ['a', 'b']]b = a                 # 赋值,将变量a赋值给变量b
c = a.copy()          # 浅拷贝, 或者 c = copy.copy(a)
d = copy.deepcopy(a)  # 深拷贝print(a)              # [1, 2, 3, 4, ['a', 'b']]
print(b)              # [1, 2, 3, 4, ['a', 'b']]
print(c)              # [1, 2, 3, 4, ['a', 'b']]
print(d)              # [1, 2, 3, 4, ['a', 'b']]

我们可以发现,赋值、浅拷贝和深拷贝后的变量的值是一样的,但他们的“内部”真的一样吗?
本文就是回答这个问题的

参考

本文主要参考了哔哩哔哩视频:十分钟!彻底弄懂Python深拷贝与浅拷贝机制

是视频里,up主推荐了一个神奇,即pythontutor

列表(list)

结论

为了探究前言中提到的a,b,c,d是个变量是否真的一样,我们借助pythontutor来进行可视化,从内存的角度来进行探究
在这里插入图片描述
结论:

赋值:变量b和a是完全一样的,即他们完全共享同一个内存空间,a变,b也会跟着变。
浅拷贝:变量c只有跟a共享第二级的列表,而不共享第一级列表的内容,即改变a的第一层列表内容,c不会变,而改变a第二层列表的内容,c就会跟着变了。
深拷贝:变量d和a完全不共享任何内存,d完全是新开辟了一个新的空间,即可认为d和a是完全没有关系的,改变a或者d都不会影响对方。

测试

import copya = [1, 2, 3, 4, ['a', 'b']]
b = a
c = copy.copy(a)
d = copy.deepcopy(a)print('a:', a)  # [1, 2, 3, 4, ['a', 'b']]
print('b:', b)  # [1, 2, 3, 4, ['a', 'b']]
print('c:', c)  # [1, 2, 3, 4, ['a', 'b']]
print('d:', d)  # [1, 2, 3, 4, ['a', 'b']]a.append(5)
a[4].append('c')print('a:', a)  # [1, 2, 3, 4, ['a', 'b', 'c'], 5]
print('b:', b)  # [1, 2, 3, 4, ['a', 'b', 'c'], 5]
print('c:', c)  # [1, 2, 3, 4, ['a', 'b', 'c']]
print('d:', d)  # [1, 2, 3, 4, ['a', 'b']]

结果:
在这里插入图片描述
这里的结果也不用多解释了,完全符合前面的结论

元组(tuple)

由于元组是不可变对象,那它的浅拷贝与深拷贝会一样吗?例如:

import copya = (1, 2, 3, 4, ('a', 'b'))
b = a
c = copy.copy(a)
d = copy.deepcopy(a)print('a:', a)
print('b:', b)
print('c:', c)
print('d:', d)

还是直接去看内存空间
在这里插入图片描述
结论:

对于元组来说,赋值、浅拷贝与深拷贝没有区别,都共享同一个内存,这也很好理解,因为元组是不可变对象,是无法对变量a进行修改的

列表与元组混合

列表里面嵌套元组

import copya = [1, 2, 3, 4, ('a', 'b')]
b = a
c = copy.copy(a)
d = copy.deepcopy(a)print('a:', a)
print('b:', b)
print('c:', c)
print('d:', d)

内存情况:
在这里插入图片描述
结论:

就算是深拷贝,元组部分都是共享内存的

元组里面嵌套列表

import copya = (1, 2, 3, 4, ['a', 'b'])
b = a
c = copy.copy(a)
d = copy.deepcopy(a)print('a:', a)
print('b:', b)
print('c:', c)
print('d:', d)

内存情况:
在这里插入图片描述
结论:

完全同列表的情况

http://www.tj-hxxt.cn/news/117924.html

相关文章:

  • 网站建设岗位工作范围百度竞价开户多少钱
  • 邢台贴吧最新消息百度首页关键词优化
  • 金普新区城乡建设局网站互联网
  • 网站加关键词免费手机优化大师下载安装
  • 中国室内设计师网首页seo岗位有哪些
  • 各地信息推广平台关键词快速优化排名软件
  • 网站定制公司排行榜竞价托管外包服务
  • 广州注册公司多少钱百度seo公司一路火
  • 网站备案流程及资料公司网址怎么制作
  • 做使用的网站有哪些公司的网站制作
  • 沐众科技网站建设市场调研报告范文
  • 可以做数据图的的网站日照网络推广
  • wordpress怎样开发支付宝网站seo好学吗
  • html php网站开发如何在百度上添加自己的店铺
  • wordpress自动链接到图片大小太原seo代理商
  • 广州网站开发平台上海网站营销seo方案
  • wordpress execl站长之家seo工具包
  • it行业网站模板品牌营销推广方案怎么做
  • 厦门建设局招聘关键字优化用什么系统
  • 西安手机网站制作的公司3天引流800个人技巧
  • 学电商有前途吗贵港seo
  • 铜仁做网站公司站长工具忘忧草社区
  • 网站设计一个版块搜索引擎优化涉及的内容
  • 珠海市网站建设制作设计平台搜索引擎营销案例分析题
  • 网站建设编程怎么写全网模板建站系统
  • 做国际网站有用吗厦门seo新站策划
  • 重庆市公司网站备案在哪了竞价推广套户渠道商
  • 做网站专业公司今天最新新闻10条
  • 外贸网站建站推广论坛推广网站
  • 易加互动平台百度seo关键词排名推荐