1. 程式人生 > >函式進階之閉包

函式進階之閉包

定義:一個函式a返回了它裡面函式的函式名稱b給返回了,當在外部拿到函式b的時候,a的記憶體是不會釋放的,所以我們在外部可以執行函式b,並且還能用函式a作用域裡面的所有的值,這就叫閉包。

示例:
def func():
    n = 10

    def func2():
        print('func2', n)

    return func2


f = func()
print(f)  # <function func.<locals>.func2 at 0x103135620> func2的記憶體地址
f()  # func2 10