python变量的作用域
python中变量作用域有4种情况
L:local,局部作用域,即函数中定义的变量
E:enclosing,嵌套的父级函数的局部作用域,即包含此函数的上级函数的局部作用域,但不是全局
G:globa,全局变量,就是模块级别定义的变量
B:built-in 系统固定模块里面的变量,如int,bytearray等
搜素变量的优先级顺序依次为:LEGB
例如:
x=int(3.4) #int built-in
y=2 #globe
def out()
Z=4
print(y)#enclosing
print(Z)
def out2()
y=3 #local
print (y)
out2()
print(x)
out()
执行结果:

提示:此处的函数写完后,直接点击两下回车。
全局变量不可直接修改:

全局变量修改方法:在引用时添加global
、

修改enclosing变量值 (在引用变量前添加nonlocal)


浙公网安备 33010602011771号