【flag】 python 关于全局变量global 注意:py中的执行循序
python 读音呀:英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/
提醒自己纠正错误读音😂
global:将函数内定义的变量升级为全局变量
🌰:(看起来并没有错)
1 def func(): 2 global a 3 a = 3 4 print(a) 5 6 print(a)
执行结果:
--------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-2-a018dd9949f7> in <module>() 5 print(a) 6 ----> 7 print(a) NameError: name 'a' is not defined
# 变量a没有被定义
但是这里没有语法错误!!! 问题出在执行循序
1 def func(): 2 global a 3 a = 3 4 print(a) 5 func() 6 print(a)
# 先执行函数 变量a就出现啦
结果:
3 3