
在Python中,变量的作用域限制非常重要。根据作用域分类,有局部、全局、函数和内建作用域。无作用域限制的变量可以在分支语句和循环中定义,并在外部直接访问。不同的作用域决定了变量的可访问范围,访问权限取决于变量的位置。
1.无作用域限制
-  在 Python 中,分支语句if,if...else..., 和循环中定义的变量,在外部可以直接访问,不存在作用域的问题 
if 5 > 3:
    a = 99
print(a)   # 99
for i in range(10):
    b = 87
print(b)   # 872.作用域
-  变量的作用域:是指变量能够被访问的范围 
-  程序中的变量不是在任意位置都可以直接被访问的,访问的权限取决于变量的位置 
3.作用域分类
-  局部作用域(L):变量定义在函数的内部,在外部不能直接访问 
def demo():
    c = 85
# print(c)     # NameError: name 'c' is not defined-  全局作用域(G):定义的变量在文件的任意位置可以使用 
num = 77
# print(num)
def test():
    print(num, "-----")
test() # 77 ------  函数作用域(E):将变量定义在闭包函数外的范围(外部函数中) 
def outer():
    num1 = 55
    def inner():
        print(num1)
    return inner
fn = outer()
fn()    # 55-  内建作用域(B): 
nn = int("33")
print(nn)    # 33


















