Python 閉包

之前我們已經看過如何在 Python 中建立巢狀函式。 如果從函式中返回一個巢狀函式,那個巢狀函式可以訪問該函式中定義的變數,即使該函式已經不再活動。 以下是一個簡單的計數器範例。 def counter(): count = 0 def increment(): nonlocal count count = count + 1 return count return increment increment = counter() print(increment()) # 1 print(increment()) # 2 print(increment()) # 3 我們返回了 increment() 內部函式,而該函式仍然可以訪問到 count 變數的狀態,即使 counter() 函式已經結束。