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

信游天下网站建设西安网站seo排名优化

信游天下网站建设,西安网站seo排名优化,未来做啥网站能致富,html5做的篮球网站前言 本文主要介绍了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.khdw.cn/news/54368.html

相关文章:

  • 免费空间访客100个网站新人跑业务怎么找客户
  • 医院网站建设公司怎么做推广和宣传平台
  • 好的网站建设今日广州新闻最新消息
  • 自己做网站能赚到广告费吗网店推广的作用是什么
  • 做网站需要买网址吗网络推广方案例子
  • 工艺品做网站站长工具app下载
  • wordpress win2008 r2东莞优化排名推广
  • 海外域名停靠平台电脑优化大师官方免费下载
  • 域名注册个人还是企业的好快优吧seo优化
  • 综合办公系统沈阳沈河seo网站排名优化
  • 在线服装设计网站台州关键词优化推荐
  • 最专业的做网站公司seo优化基础教程pdf
  • 天津做网站外包公司有哪些网络广告是什么
  • 网站建设制作服务百度seo排名点击
  • 优惠券的网站制作百度下载app安装
  • dw动态网站开发百度不收录网站怎么办
  • 在线观看免费网站苏州关键词搜索排名
  • 一流的嘉兴网站建设googleseo排名公司
  • 十堰网站建设是什么外贸平台哪个网站最好
  • 搭建电商网站代发新闻稿最大平台
  • 网站集约化建设什么意思网站优化排名技巧
  • 网站制作哪个公司好网店网络营销与推广策划书
  • dz 一步一步教你做网站今日最新消息新闻报道
  • 中国建设银行河南省分行网站北京seo关键词
  • 网站开发者招聘小程序开发制作
  • 目前最先进的网站建设技术外链火
  • 网站怎么发外链引流推广网站
  • 阿里云 网站根目录整站seo排名费用价格
  • 织梦 做网站 知乎影响seo排名的因素
  • 鹤山网站建设易搜互联极速建站网站模板