Python 范围
变量仅在其创建的区域内可用。这称为 **范围**。
局部范围
在函数内部创建的变量属于该函数的 *局部范围*,并且只能在该函数内部使用。
函数内部的函数
如上例所示,变量 x
在函数外部不可用,但在函数内部的任何函数中都可用
全局范围
在 Python 代码的主体中创建的变量是全局变量,属于全局范围。
全局变量在任何范围内都可用,包括全局范围和局部范围。
变量命名
如果在函数内部和外部使用相同的变量名,Python 将把它们视为两个独立的变量,一个在全局范围(函数外部)可用,另一个在局部范围(函数内部)可用
global 关键字
如果你需要创建一个全局变量,但被困在局部范围内,可以使用 global
关键字。
global
关键字使变量成为全局变量。
此外,如果你想在函数内部修改全局变量,也要使用 global
关键字。
nonlocal 关键字
nonlocal
关键字用于处理嵌套函数内的变量。
nonlocal
关键字使变量属于外部函数。
示例
如果您使用 nonlocal
关键字,则变量将属于外部函数
def myfunc1()
x = "Jane"
def myfunc2()
nonlocal x
x = "hello"
myfunc2()
return x
print(myfunc1())
自己试试 »