Python 中的裝飾器是一個功能強大的工具,可讓您在現有函數周圍包裝額外的功能。可以將其視為在函數上添加額外的“很棒”層,而無需實際更改原始程式碼。
裝飾器只是一個函數,它接受另一個函數作為輸入,增加一些額外的功能,並傳回一個新函數。
範例:
def shout(func): def wrapper(): return func().upper() return wrapper @shout def greet(): return "hello" print(greet()) # Outputs: HELLO
這裡,@shout 裝飾器轉換greet(),因此它以大寫形式傳回其輸出。
裝飾器可以方便地為函數添加橫切功能,例如:
是的,您可以堆疊多個裝飾器以將多層功能應用於單一函數。
@authenticate @log def process_data(data): # Function code
這首先運行身份驗證,然後運行日誌,最後運行 process_data。
裝飾器讓您可以在不混亂的情況下為程式碼添加功能。它們是您獲得乾淨、可重複使用和增強功能的捷徑。
?這是功能更多、沒有混亂的功能! ”
以上是Python 裝飾器:為您的函數添加魔法,一次一層的詳細內容。更多資訊請關注PHP中文網其他相關文章!