为了账号安全,请及时绑定邮箱和手机立即绑定

Python‘for’循环中的作用域

Python‘for’循环中的作用域

猛跑小猪 2019-07-09 12:30:05
Python‘for’循环中的作用域我不是在问Python的范围规则,我大致理解多么,怎样范围在Pythonfor循环中工作。我的问题是为什么设计决策就是这样作出的。例如(无意使用双关语):for foo in xrange(10):     bar = 2print(foo, bar)以上将打印(9,2)。这让我觉得很奇怪:‘foo’实际上只是控制循环,‘bar’是在循环中定义的。我可以理解为什么“BAR”可能需要在循环之外进行访问(否则,循环的功能将非常有限)。我不明白的是为什么在循环退出后控制变量必须保持在范围内。根据我的经验,它只会使全局命名空间变得混乱,并使查找其他语言的解释器捕获的错误变得更加困难。
查看完整描述

3 回答

?
qq_笑_17

TA贡献1818条经验 获得超7个赞

Python没有块,其他一些语言(如C/C+或Java)也是如此。因此,Python中的范围单元是一个函数。


查看完整回答
反对 回复 2019-07-09
  • 3 回答
  • 0 关注
  • 941 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信