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

中国男女做网站自己做网站平台

中国男女做网站,自己做网站平台,平面设计免费课程视频,网上怎么开平台做销售引出 今天在运行之前写的一个Python脚本时#xff0c;发生了一个奇怪的现象#xff08;我怎么老遇到奇怪的现象#xff5e;#xff5e;#xff09;。当时的代码大概长这样#xff1a; a [1, 2, 3] b [4, 5, 6] # ...一大段逻辑 c a c b # ...一大段逻辑 # 在这里发生了一个奇怪的现象我怎么老遇到奇怪的现象。当时的代码大概长这样 a [1, 2, 3] b [4, 5, 6] # ...一大段逻辑 c a c b # ...一大段逻辑 # 在这里a变成了[1, 2, 3, 4, 5, 6] 首先上面的代码一个函数过于长了实在不像话 当时的情景是这样的程序并没有想我预期中一样运行。我找了半天没有找到对a变量的修改或赋值操作。 最终发现了藏在中间的c变量因为是列表对象的引用赋值所以直接修改了a变量。我将两个变量的地址打印出来确实是这样的。 本来查到这里基本上破案了。也应该没有后续了 但我上网查了一下有人说用 就不会出现这种情况我轻蔑的笑了有什么区别么不信邪的我试了一下。 What谁能告诉我发生了什么 探究 根据我的推测必然是操作改变的是原对象操作返回了新的对象。尝试一下 果不其然。在此破案。 解惑 都知道Python的运算符重载操作加法调用的是__add__方法调用的是__iadd__方法。既然产生这个现象那一定是list对两个方法的实现不同咯。 尝试自己动手测试写一个Test类实现两个重载方法 分别调用和 可以看到都是新的值。如果修改一下方法的实现 再测试就会发下两个运算返回的都是同一个对象。水落石出Python对两个不同的运算符使用了不同的实现方法。 一探究竟 那为什么Python会在 操作时直接修改原对象。而操作却要返回新的对象呢 简单推测一下可能Python的作者认为操作是要将后边的值加到自身上。而则是两个值的运算操作。根据表达是也可以看出 a b # 这里只涉及两个变量将b的内容直接加到a上 c a b # 这里涉及到了三个变量将后两者内容相加后赋值给新的变量 最后既然和的实现不同那么同理列表的-和-、*和*、/和/的实现也必然不同。 哦不好意思list没有实现减法和除法的操作。但乘法确实也是这样。 好吧之后再进行对象运算符重载时可以参考一下上面的做法仔细想想还是很合乎逻辑的。
http://www.pierceye.com/news/280171/

相关文章:

  • asp.net 网站提速廊坊企业官网搭建
  • 网站开发全过程电商数据分析
  • 代理 指定网站 hostwordpress图片无限放大
  • 中材建设有限公司招标网站包装设计网课答案
  • python云服务器网站开发实例外贸小家电网站推广
  • 郑州做网站公司中天猫商城的商品来源
  • 织梦网站首页互联网保险平台排名
  • 免费做链接的网站做动画相册在哪个网站好
  • 做思维导图好看的网站可以做富集分析的网站
  • wordpress 媒体库 cos百度网站怎样优化排名
  • 自助建站程序html样式模板
  • 公主岭网站建设筑梦网站建设
  • 昊源建设监理有限公司网站广州住房与城乡建设部网站
  • 如何免费建立自己网站wordpress媒体优化
  • 南京企业做网站网站建设的类型有几种
  • 不需要证件做网站相城区建设网站
  • 游戏推广网站如何做的全网投放广告的渠道有哪些
  • 飞数石家庄网站建设seo 关键词优化
  • 织梦新手网站建设建筑工程公司资质
  • 网站建设开什么名目外贸网站建设关键点
  • 大学生网站设计河南省建筑工程信息网
  • 安徽省住房和城乡建设厅网站首页wordpress评论框中加文字提示
  • 南京营销型网站建设公司杭州模板建站代理
  • 网页设计比较优秀的网站沈阳网站推广公司
  • 西安网站建设维护如何免费制作app软件
  • 用 net做网站大理市城乡建设局网站
  • 怎么在建筑网站做翻译兼职哈尔滨 高端网站建设
  • 网站建设颜色注意事项优化网站要怎么做
  • 作图神器沧州网站优化
  • 做水果的网站有哪些公司网页设计作品