Python 闭包

闭包是一个函数对象,它记住封闭作用域中的值,即使它们不存在于内存中。

首先要明白,嵌套函数是定义在另一个函数内部的函数。
需要注意的是,嵌套函数可以访问封闭作用域的变量,这一点非常重要。
但是,至少在 python 中,它们只是只读的。
但是,可以对这些变量显式使用“nonlocal”(非本地)关键字来修改它们。

www. On IT Road .com

Python 闭包示例

在这个例子中,我们可以看到闭包有助于调用其作用域之外的函数。

inner()函数的作用域仅在 outer()函数内,但我们可以借助闭包扩展 inner() 函数的作用域,以调用其作用域外的函数。

def outer(text):
    text = text
    def inner():
        print(text)
    return inner  # 返回不带括号的函数
if __name__ == '__main__':
    myFunc = outer('Hello')
    myFunc()

Python嵌套函数示例

def outer(text):
    text = text
    def inner():
        print(text)

    inner()
if __name__ == '__main__':
    outer('Hello')
日期:2020-09-17 00:10:31 来源:oir作者:oir