时间:2021-05-22
作用域介绍
python中的作用域分4种情况: L:local,局部作用域,即函数中定义的变量;
E:enclosing,嵌套的父级函数的局部作用域,即包含此函数的上级函数的局部作用域,但不是全局的;
G:globa,全局变量,就是模块级别定义的变量; B:built-in,系统固定模块里面的变量,比如int, bytearray等。 搜索变量的优先级顺序依次是:作用域局部>外层作用域>当前模块中的全局>python内置作用域,也就是LEGB。
x = int(2.9) # int built-ing_count = 0 # globaldef outer():o_count = 1 # enclosingdef inner():i_count = 2 # local当然,local和enclosing是相对的,enclosing变量相对上层来说也是local。
#定义变量a>>> a = 0>>> print a0#定义函数p()>>> def p():... print a... >>> p()0#定义函数p2()>>> def p2():... print a... a = 3... print a... >>> p2() # 运行出错,外部变量a先被引用,不能重新赋值Traceback (most recent call last):File "<interactive input>", line 1, in <module>File "<interactive input>", line 2, in p2UnboundLocalError: local variable 'a' referenced before assignment#定义函数p3()>>> def p3():... a = 3 # 不引用直接赋值... print a... >>> p3()3>>> print a0 # 外部变量a并未改变以上所述是小编给大家介绍的Python中的变量和作用域详解,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
特点python的作用域是静态的,在源代码中变量名被赋值的位置决定了该变量能被访问的范围。即Python变量的作用域由变量所在源代码中的位置决定。Python中
python引用变量的顺序:当前作用域局部变量->外层作用域变量->当前模块中的全局变量->python内置变量一、globalglobal关键字用来在函数或其
1、Javascript变量作用域javascript中,变量主要分为局部变量和全局变量两种,对应的作用域也是局部作用域和全局作用域。1局部变量和作用域局部变量
在表达式中引用变量时,Python会按照如下的顺序遍历各个作用域,寻找该变量:当前函数作用域任何外围作用域(比如包含当前函数的其他函数)global作用域,即代
变量---->局部变量和全局变量,作用域:在某个空间范围内,可以对数据进行读写操作局部作用域和全局作用域js中没有块级作用域—一对括号中定义的变量,这个变量可以