【python基础】python中变量作用域介绍

在Python中,变量的作用域决定了变量可以被访问的范围。Python主要有以下几种作用域:

1. LEGB规则(Local, Enclosing, Global, Built-in)

Python使用LEGB规则来查找变量。这个规则按照以下顺序查找变量:

  • L(Local):局部作用域,指当前函数或代码块中定义的变量。
  • E(Enclosing):嵌套作用域,指外部函数(包含当前函数)的作用域中定义的变量。它是函数嵌套时的外部环境。
  • G(Global):全局作用域,指模块级别上定义的变量。
  • B(Built-in):内置作用域,指Python解释器提供的内置函数和异常等(比如print(), len(), max()等)。

2. 作用域示例

x = 10  # 全局作用域

def outer():
    y = 20  # 外部函数的局部作用域
    def inner(