本文將介紹 Python 中的閉包(Closure),我們將從閉包的定義開始介紹,然後是閉包的用途,以及最後的實作範例。
在 Python 中,閉包是一個函式,它記住了其外部作用域中的變量,即使該作用域已經完成執行。閉包的特點是它允許函式訪問那些不在作用域中的非全局變量。
閉包可以用於封裝變量,提供類似物件導向編程中的封裝功能。它們通常用於回調函數和裝飾器。
以下提供一個範例來幫助理解閉包的概念。
def outer_function(msg):
message = msg
def inner_function():
print(message)
return inner_function
print_message = outer_function('Hello, World!')
print_message()
在這個範例中,outer_function
創建了一個叫做 message
的變量,然後定義了一個 inner_function
。這個 inner_function
是一個閉包,因為它記住了 message
變量的值。
這篇寫完後,我回頭看了一下裝飾器這篇,其實裝飾器就是使用閉包(Closure)吧,不知道我這樣理解有沒有錯。然後,Javascript裡面也有閉包(Closure),應該都是同樣的一件事情吧,都是同樣的Function包Function,有比較理解的朋友歡迎留言解惑。
😊 感謝你的耐心閱讀,若是你喜歡這篇內容,可以透過以下方式表達你的喜歡 😊