python標註,@decorators

 

看了篇python標註的文章,很想寫篇文章做個筆記,既非轉載,也非翻譯,原文如下:

http://stackoverflow.com/questions/739654/understanding-python-decorators/1594484#1594484

 


  1 def makebold(fn):
  2     def wrapped():
  3         return "<b>" + fn() + "</b>"
  4     return wrapped
  5
  6 def makeitalic(fn):
  7     def wrapped():
  8         return '<i>' + fn() + '</i>'
  9     return wrapped
 10
 11 @makebold
 12 @makeitalic
 13 def say():
 14     return "Hello"
 15
 16 print say()

 @makeitalic
 def say():

其實就等於把say這個函數作爲makeitalic函數的參數。


 @makebold
  @makeitalic

這個makeitalic又作爲makebold函數的參數。

 

想要更多的瞭解請看原文

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章