1. 程式人生 > >Python中的裝飾器

Python中的裝飾器

  看起來也不錯,負責計算的函式不用更改,只需呼叫的時候作為引數傳給計算時間差的函式.但就是這,呼叫的時候形式變了,不再是clac(1, 2),而是calc_spend_time(clac_add, 1, 2),萬一calc_add大規模被呼叫,那麼還得一處一處找,然後修改過來,還是很麻煩.如果想不修改程式碼,就得使clac()和calc_spend_time(clac)效果一樣,那麼可以在calc_spend_time()裡把傳入的clac包裝一下,然後返回包裝後的新的函式,再把返回的包裝好的函式賦給clac,那麼calc()的效果就和上例calc_spend_time(calc())效果一樣.