python中在一個函數中加入多個裝飾器的方法:可以在函數名稱前使用@逐一添加裝飾器,如【@decorator1 @decorator2】。裝飾器與物件一樣,可以賦值給一個變量,也可以在其它函數中定義。
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中文網其他相關文章!