Python 中的 nonlocal 关键字

Vaibhhav Khetarpal 2022年7月17日 2022年5月17日
Python 中的 nonlocal 关键字

nonlocal 关键字用于设置特定变量的范围。它主要用于程序中发生嵌套的情况。

在本教程中,我们将讨论 Python 中的 nonlocal 关键字。

使用 nonlocal 关键字时,其作用域与一般的 globallocal 变量有很大不同。nonlocal 关键字用于处理嵌套函数下的变量,在这种情况下,需要在外部函数中访问给定变量的范围。

nonlocal 函数表示所处理的给定变量不属于给定嵌套函数的本地。但是,这并不意味着用 nonlocal 关键字指定的变量是全局变量。nonlocalglobal 是不同的,工作方式也不同。

以下代码使用 Python 中的 nonlocal 变量。

a = 0
def outr():
    a = 1
    def innr():
        nonlocal a
        a = 2
        print("inner variable value:", a)
    innr()
    print("outer variable value:", a)
outr()
print("global variable value:", a)

上面的代码提供了以下输出:

inner variable value: 2
outer variable value: 2
global variable value: 0

上面的代码解释了如何在 Python 中使用 nonlocal 关键字。它提供了关于 nonlocal 关键字与 global 关键字的不同之处的迷人见解。

nonlocal 关键字在局部范围之外重新绑定给定的变量,但不会覆盖或重新绑定到全局范围。

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn