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

邢台网站招聘员工123wordpress 汉化插件

邢台网站招聘员工123,wordpress 汉化插件,网站首页设计素材,河北沧州最新消息今天用一个可变的值作为默认值这是一个绝对值得放在第一个来说的问题。不仅仅是因为产生这种BUG的原因很微妙#xff0c;而且这种问题也很难检查出来。思考一下下面的代码片段#xff1a;def foo(numbers[]):numbers.append(9)print numbers在这里#xff0c;我们定义了一个 lis…用一个可变的值作为默认值这是一个绝对值得放在第一个来说的问题。不仅仅是因为产生这种BUG的原因很微妙而且这种问题也很难检查出来。思考一下下面的代码片段def foo(numbers[]):numbers.append(9)print numbers在这里我们定义了一个 list (默认为空)给它加入9并且打印出来。 foo()[9] foo(numbers[1,2])[1, 2, 9] foo(numbers[1,2,3])[1, 2, 3, 9]看起来还行吧可是当我们不输入number 参数来调用 foo 函数时神奇的事情发生了 foo() # first time, like before[9] foo() # second time[9, 9] foo() # third time...[9, 9, 9] foo() # WHAT IS THIS BLACK MAGIC?![9, 9, 9, 9]那么这是神马情况直觉告诉我们无论我们不输入 number 参数调用 foo 函数多少次这里的9应该被分配进了一个空的 list。这是错的在Python里函数的默认值实在函数定义的时候实例化的而不是在调用的时候。那么我们仍然会问为什么在调用函数的时候这个默认值却被赋予了不同的值因为在你每次给函数指定一个默认值的时候Python都会存储这个值。如果在调用函数的时候重写了默认值那么这个存储的值就不会被使用。当你不重写默认值的时候那么Python就会让默认值引用存储的值(这个例子里的numbers)。它并不是将存储的值拷贝来为这个变量赋值。这个概念可能对初学者来说理解起来会比较吃力所以可以这样来理解有两个变量一个是内部的一个是当前运行时的变量。现实就是我们有两个变量来用相同的值进行交互所以一旦 numbers 的值发生变化也会改变Python里面保存的初始值的记录。那么解决方案如下def foo(numbersNone):if numbers is None:numbers  []numbers.append(9)print numbers通常当人们听到这里大家会问另一个关于默认值的问题。思考下面的程序def foo(count0):count  1print count当我们运行它的时候其结果完全是我们期望的 foo()1 foo()1 foo(2)3 foo(3)4 foo()1这又是为啥呢其秘密不在与默认值被赋值的时候而是这个默认值本身。整型是一种不可变的变量。跟 list 类型不同在函数执行的过程中整型变量是不能被改变的。当我们执行 count1 这句话时我们并没有改变 count 这个变量原有的值。而是让 count 指向了不同的值。可是当我们执行 numbers.append(9) 的时候我们改变了原有的 list 。因而导致了这种结果。下面是在函数里使用默认值时会碰到的另一种相同问题def print_now(nowtime.time()):print now跟前面一样time.time() 的值是可变的那么它只会在函数定义的时候计算所以无论调用多少次都会返回相同的时间 — 这里输出的时间是程序被Python解释运行的时间。 print_now()1373121487.91 print_now()1373121487.91 print_now()1373121487.91这个问题和它的解决方案在 Python 2.x 和 3.x 里都是类似的在Python 3.x 里面唯一的不同是里面的print 表达式应该是函数调用的方式(print(numbers))。大家应该注意到我在解决方案里用了 if  numbers is None 而不是 if not numbers 。这是另一种常见的错误我准备在接下来的文章里面介绍。英文出处Amir Rachum译文出处伯乐在线 - 贱圣OMG
http://www.pierceye.com/news/626374/

相关文章:

  • 做网站的费属于什么费用昆山智能网站开发
  • 西安网站制作南昌公司企业微信app下载安装官方版
  • 网站建设情况总结个人静态网页学生作业
  • 手机网站一键分享到微信asp.net ftp发布网站
  • 重庆网站制作公司妇联加强网站平台建设
  • php mysql网站开发全程实例.pdf网站的视频怎么下载
  • 海南医院网站建设软件工程公司排名
  • 微信公众号怎么分享wordpress网站优化搜索
  • 永定门网站建设佛山网红打卡景点大全排名榜
  • 网站建设模板推广重庆网络问政平台华龙网
  • 今科云平台网站建设技术中国电力建设股份部官方网站
  • 门户网站的三大基本特征vs2017做的网站如何发布
  • 怎么样自己做网站接订单网站建设和的注意事项
  • 月付商城网站建站男装商城网站建设
  • 建网站的步骤及方法php做的网站怎么运行
  • 英德市住房和城乡建设局手机网站html5手机网站模板下载
  • 网站建设手机建设网站 系统占用空间
  • 网站没内容网站域名.xin
  • 布吉建设网站网站是怎么制作出来的
  • 有赞网站开发凡科建站网
  • html5商业网站开发北大青鸟wordpress免费模版
  • 网站建设及那个科目提升网站页面打开速度
  • 直接玩的网页游戏关键词优化工具有哪些
  • 单页面网站如何优化引流四川网站建设贴吧
  • 贵州省建设银行网站wordpress首页调用文章缩略图
  • 项城市住房和城乡建设局网站融资平台公司
  • asp企业网站设计sage wordpress
  • 做视频网站需要哪些条件wordpress登录页面背景图片尺寸
  • 专门教做衣服的网站西宁电商网站建设
  • 无锡网站科技公司qq哪家公司开发的