范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Python的赋值与复制

  对于Python的初学者,在对象的使用过程中,由于对变量的赋值和对象的复制中的概念模糊,导致程序出错。
  例如,下面的代码: a = [1,2,3,4,5] b = a c = [1,2,3,4,5]  b[0] = 6 print("a = {},b = {},c = {}".format(a, b, c)) print("a等于b?{}".format(a==b)) print("a等于c?{}".format(a==c))  print("a是b?{}".format(a is b)) print("a是c?{}".format(a is c))
  输出结果为:
  a = [6,2,3,4,5],
  b = [6,2,3,4,5],
  c = [1,2,3,4,5]
  a等于b?True
  a等于c?True
  a是b?True
  a是c? False
  可以看到,a,b, c所指向的对象的值都相同(a==b为True). a和b都是代表同一个对象(a is b为True)。当我们通过变量b对该列表进行修改时,由于a也指向该列表,所以当打印a,b时,我们得到相同的值。 而a和c则是代表不同的对象(a is c为False),所以修改b所指向得列表不会改变c梭子乡的列表的值.
  在Python中,所有的变量都代表了对象,即便是简单的数字类型(int, float, bool),也是以对象的形式存在的。我们看下面的代码: a = 1 b = a print("a==b为{}".format(a==b)) print("a is b为{}".format(a is b))
  输出结果是:
  a==b为True
  a is b为True
  可见,a, b都是指向同一个对象。接下来,进行下面的操作, b = b+1 print("a={},b={}",a, b) print("a is b为{}".format(a is b)
  输出结果是:
  a = 1, b = 2
  a is b为False
  与前面的列表不同,当我们对b做修改时,实际上是给b赋予了一个新生成的对象,对数值类型来说,所有的数值运算都会创建一个数值对象,并将这个对象指定给变量。因此,a与b指向了不同的对象,数值也不同。
  再回过头来看列表对象,a = [1,2,3,4,5,6] b = a b[0]=-1 print("a={},b={}".format(a,b))
  我们知道,b是与a指向同一对象的变量,使用b对该对象进行修改,与使用a对该对象进行修改,效果是完全一样的。如果我们需要需要一个与a完全相同又与a相互独立的列表,那么就需要复制这个对象,也就是新建一个内容和源对象相同的对象。
  对于列表来说,最简单的复制方法是通过下标索引的方式创建新的列表:a = [1,2,3,4,5,6] b = a[:] print("a=",a) print("b=",b) print("a is b为", a is b)
  对于各种数据类型通用的对象拷贝复制,我们可以使用python內建的copy模块。 import copy a = [1,2,3,4,5] b= copy.copy(a) print("a=",a) print("b=",b) print("a is b为", a is b)
  对于复杂对象(如嵌套列表)的复制,则需要注意区分浅拷贝和深拷贝。我们来看下面的代码:import copy a = [[1,2,3],[4,5,6]] b = copy.copy(a) c = copy.deepcopy(a) print("a[0] is b[0]为",a[0] is b[0]) print("a[0] is c[0]为",a[0] is c[0]) b[1] = [7,8,9] b[0][0]=-1 print("a = ", a) print("b = ", b) print("c = ", c) print("a[1] is b[1]为",a[1] is b[1])
  得到的结果是:
  a[0] is b[0]为 True
  a[0] is c[0]为 False
  a = [[-1, 2, 3], [4, 5, 6]]
  b = [[-1, 2, 3], [7, 8, 9]]
  c = [[1, 2, 3], [4, 5, 6]]
  a[1] is b[1]为False
  从上面的代码我们可以看到,copy函数为浅拷贝,只拷贝了对象的外层,而对象内部所包含的对象仍然指向原有的对象。而deepcopy则为深拷贝,对象内部的对象也进行了复制。
  以上我们对变量的赋值和对象的复制做了更加深入的分析。在具体的使用中,我们需要根据具体来决定使用赋值、浅拷贝、深拷贝。

奇瑞小蚂蚁来了个敞篷版,太酷炫!这车若量产,五菱宏光又遇强敌在2021成都车展上,奇瑞新能源小蚂蚁(询底价查参配)敞篷版新车正式亮相。新车将个性化的敞篷元素与萌趣可爱的风格结合,颇具视觉冲击感。据悉,这款车由奇瑞与第三方制作公司合作推出,目巅峰对决!2021年9月将要发布的7款新品手机大盘点随着8月份的结束,9月份的手机新品发布会再次成为数码爱好者关注的焦点。除了一年一度的苹果秋季新品发布会以外,还有6场重磅的手机新品发布会基本实锤。亓纪对这些发布会的产品和看点进行了晚点独家丨王诗沐任腾讯新闻负责人,又一位空降高管加入腾讯以十几年经验的产品负责人接替资深新闻人。文高洪浩编辑黄俊杰晚点LatePost独家获悉,原网易云音乐副总裁网易美学负责人王诗沐已加入腾讯新闻成为第一负责人,任总经理一职,向腾讯首席IQ008能不能震住火龙888最近朋友入手了一台IQ008,我们都知道IQ008把他的配置吹得很神,各种称号,什么游戏神机,六边形战士等。这可是拉满我的期待,所以听说出于好奇IQ008打王者究竟怎么样。我先拿过每天5分钟,python速成(31)首先明确学习目标,今天的目标是python拆包拆包拆解数据包注意需要拆的数据的个数要与变量的个数相同,否则程序会异常a,b,c1,2,3print(a)print(b)print(荣耀X20Max巨屏手机现身,6000毫安超大电池,搭载天玑1100芯片?荣耀Magic3系列发布会结束时,赵明给出彩蛋确定更新荣耀X20Max手机,但并未给出具体发布时间,而是说明敬请期待。随着时间推进,网上流传关于荣耀X20Max相关配置信息,预计最美团收购被查8月30日,美团在其发布的业绩公告或然事项中称,2021年4月,国家市场监督管理总局根据中华人民共和国反垄断法对公司展开相关调查。截至本报告日期,相关调查仍在进行。公司于现阶段无法原网易云音乐副总裁王诗沐任腾讯新闻负责人传媒内参导读日前,原网易云音乐副总裁网易美学负责人王诗沐已加入腾讯新闻成为第一负责人,任总经理一职,向腾讯首席运营官任宇昕汇报。王诗沐不是近期唯一空降腾讯,并执掌具体业务的管理者。2K120骁龙888Plus!魅族新机入网,这还不支持?随着小米MIX4率先发布了骁龙888Plus处理器后,像是吹起了骁龙888Plus的冲锋号似的,各个厂商的旗舰新机如同雨后春笋般一样,慢慢呈现在我们眼前。而魅族自今年三月份推出了魅续航410公里,价格7万,华晨新日发布2款城市通勤代步微型电动车请您在阅读前,先点击上面的关注。感谢您的支持,我们将为您带来更多有价值的内容。2021年,A00级微型电动车市场异常火爆,以五菱宏光MINIEV为首的小车长期霸占新能源车销量榜的前掏空大山沉入海底?互联网大厂的服务器为什么要这么处理?全球的互联网公司里最重要的莫过于它们的服务器,一旦服务器发生故障后果不堪设想,在我们的认知里这些公司的服务器一定是放在非常重要的地方。但其实全球很多公司的服务器存放的地方,可能令网
魅族发布会新品提前曝光手机壳钢化膜镜纸中关村在线消息4月19日晚,魅族将举行春日新品观影会,潮玩品牌PANDAER智能家居品牌Lipro都有新品发布。18日下午,PANDAER官微对发布会上的新品做了提前曝光iPhon仅售1599元,6nm芯10G256G,荣耀再次发力了声明原创不易,禁止搬运,违者必究!现在的国内手机厂商,可以说是上得了厅堂,下得了厨房。不仅能够在中低端市场立足,还能够打造出高端旗舰机型,实现了大小通吃。没有过硬的技术,如何能够有软件更新P50Pro2。0。0。246发布说明(合入4月安全补丁)更新详情软件更新P50Pro2。0。0。246发布说明(合入4月安全补丁)感谢各位花粉的支持,欢迎您体验P50ProHarmonyOS2版本2。0。0。246。本次更新合入了安全补传三星电机参与苹果M2芯片研发,将供应FCBGA载板(ChinaIT。com讯)继M1芯片后,三星电子旗下三星电机(SamsungElectroMechanics)有机会和苹果(AAPLUS)再续前缘,为下一代M2芯片供应覆晶球闸阵iQOONeo6SE搭载80W快充红魔7Pro擎天柱定制版套装发布科技犬iQOONeo6SE马上也要来了。根据爆料,iQOONeo6SE将会搭载6。62英寸120HzOLED居中单孔屏,此外有标准的骁龙8704700mAh80W快充三件套。与上一一些奇奇怪怪的脑洞如我们所知,一维是一条线,二维是一个平面,三维是一个立体空间,那四维就是多个空间组成的平行时空吗?如果我们穿越到了另一个平行时空,是否会遇到那个时空的自己,那那个自己还是自己吗?平下降1000的旗舰手机,值不值得入手?传送直达httpsu。jd。comZI772GI中兴Axon30Ultra,12256GB版本,京东此款目前活动售价3898元,下单支付选择白条满999减25,到手价3873元,感井通科技快讯井通快讯庆祝庆祝庆祝最近大家看到企业支付宝的项目,搬家到了公链上面来了,就是信用建基的企业版支付平台。合作方航天信息下属爱信诺征信,潜在市场1700万企业用户,区块链基础的企业支付熬出头了?A53开启ColorOS12公测招募,系统升级就看绿厂系统更新在大众看来是一件喜闻见乐轻而易举的工作,其实不然,系统前期的开发耗时耗人力,到后期的维护更新,所需的工作量都是非常大的,周期性也很长,系统的推送工作,需要对应每一款机型进行终身学习是必需品也是稀缺品都大伟今天不仅是一个信息爆炸的时代,更是一个知识爆炸的时代。随着大数据物联网5G和人工智能的发展,今天的社会进入了学界所谓第四次工业革命的时代。前所未有的增量知识以愈来愈快的速度产媒体报道丨顺网科技打造虚拟世界元宇宙里永不落幕的ChinaJoy元宇宙经历一轮沉淀,一些浮沫已被市场撇去,有能力的优质企业开始寻求元宇宙概念与业务的融合,以寻求产业应用的加速落地。此前,顺网科技旗下品牌ChinaJoy宣布将推出MetaJoy元