1、全局作用域变量在局部作用域未定义(赋值或参数)时,全局作用域变量可以在局部作用域读取。
>>> def func(): print(a) # 这种写法是不好的 >>> a = 2 # a是全局作用域变量,但可以被局部作用域读取 >>> func() 2
2、当变量被定义为局部作用域时,局部作用域不再读取全局作用域的变量,当变量被定义前读取时,就会出现错误。
>>> b = 5 >>> def func(a): print(a) print(b) # 尝试打印b变量出错,程序终止 b = 8 >>> func(3) 3 Traceback (most recent call last): File "<pyshell#6>", line 1, in <module> func(3) File "<pyshell#5>", line 3, in func print(b) UnboundLocalError: local variable 'b' referenced before assignment
以上就是python变量在作用域的使用,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。