变量作用域

  1. python作用域及命名空间
  2. LEGB
  3. # LEGB作用域范围,不同范围作用域可以同名
    v = 100      # 全局作用域G
    
    def fun1( ):
    v = 200 # 外部嵌套函数作用域E
    print('fun1.v=', v)
    def fun2( ):
    v = 300 # 局部作用域L
    print('fun2.v=', v)
    print(max) # max函数都没有创建,在内建函数作用域中,只读,不能改变
    fun2( )
    fun1( )
    print("全局变量.v=", v)
    print(max) # max变量定义在内置模块的作用域,是解释执行器提前定义好的
  4. L(local)局部作用域
  5. E(enclosing)外部嵌套函数作用域及nonlocal关键字
  6. G(global)全局作用域及global关键字
  7. B(built-in)内置作用域