首頁 > 後端開發 > Python教學 > Python中如何在一個函數中加入多個裝飾器

Python中如何在一個函數中加入多個裝飾器

anonymity
發布: 2020-09-17 16:11:26
原創
4247 人瀏覽過

python中在一個函數中加入多個裝飾器的方法:可以在函數名稱前使用@逐一添加裝飾器,如【@decorator1 @decorator2】。裝飾器與物件一樣,可以賦值給一個變量,也可以在其它函數中定義。

Python中如何在一個函數中加入多個裝飾器

Python中的函數就是對象,可以進行賦值、定義,多個裝飾器的需要在函數名前使用@進行逐一添加,執行順序是從上往下的,具體的操作過程需要在函數裝飾器中進行。

首先我們知道函數就是對象,因此對象可以賦值給一個變量,也可以在其他函數裡定義。

所以裝飾器也是一樣,這個範例自訂了兩個裝飾器,然後在test()函數上加入了兩個裝飾器,運作結果正常。

#!/usr/bin/env python  
#coding:utf-8  
def decorator1(func):  
    def wrapper():  
        print 'hello python 之前'  
        func()  
    return wrapper  
  
def decorator2(func):  
    def wrapper():  
        func()  
        print 'hello python 之后'  
    return wrapper  
 
@decorator1  
@decorator2  
def test():  
    print 'hello python!'  
  
test()
登入後複製

運行結果:

hello python 之前
hello python!
hello python 之后
登入後複製

以上是Python中如何在一個函數中加入多個裝飾器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板