python变量如何在作用域使用

python变量如何在作用域使用
python变量如何在作用域使用

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

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注