python的作用域
时间: 2023-10-29 20:56:30 浏览: 105
python变量的作用域是什么
Python中的作用域指的是变量的可访问范围。Python中有四种作用域,分别是:全局作用域、局部作用域、嵌套作用域和内置作用域。
1. 全局作用域(Global scope):全局作用域在整个程序中都可访问,包括在函数外定义的变量。在全局作用域中定义的变量可以在程序的任何位置被引用。
2. 局部作用域(Local scope):局部作用域在函数内部定义的变量只能在该函数内部被访问,这些变量对于函数外部是不可见的。每次函数调用时都会创建一个新的局部作用域。
3. 嵌套作用域(Enclosing scope):嵌套作用域是指在函数内部可以访问外部函数中定义的变量。当一个函数嵌套在另一个函数中时,内部函数可以访问外部函数的变量。
4. 内置作用域(Built-in scope):内置作用域是指Python内置的函数和变量所在的作用域。这些函数和变量可以在任何地方被访问,无需导入任何模块。
Python中的作用域规则是LEGB(Local -> Enclosing -> Global -> Built-in),即先在局部作用域查找变量,然后是嵌套作用域,再是全局作用域,最后是内置作用域。如果在当前作用域找不到变量,就会依次向上一级作用域查找,直到找到或者达到内置作用域为止。
阅读全文