python函式式程式設計3 裝飾器的深入理解

2021-09-11 13:31:57 字數 763 閱讀 3214

2、學習裝飾器必要的知識

5、使用裝飾器**@**

上面第四點中2和3步驟在python中直接使用**@**語法糖來處理

@timer

defbar

(): time.sleep(2)

print('主函式')

if __name__ == "__main__":

bar()

複製**

import time

deftimer

(func):

def(*args, **kwargs):

start_time = time.time()

res = func(*args, **kwargs)

end_time = time.time()

return res

@timer

deffoo

(name, gender):

time.sleep(3)

print(name)

print(gender)

if __name__ == "__main__":

foo('張三', gender='男')

複製**

建立乙個資料庫操的log的裝飾器

python 函式式程式設計 高階函式 裝飾器

coding gb2312 coding utf 8 高階函式 import math def is sqr x y int math.sqrt x return x y y print filter is sqr,range 1,101 返回函式 作用 延遲執行 def calc prod lst...

Python學習筆記 函式式程式設計 裝飾器

根據廖雪峰python教程整理 由於函式也是乙個物件,而且函式物件可以被賦值給變數,所以,通過變數也能呼叫該函式。def now print 2013 12 25 f now f 2013 12 25 函式物件有乙個 name 屬性,可以拿到函式的名字 now.name now f.name now...

Python學習 19 函式式程式設計 裝飾器

我們在開發乙個專案的時候,需要盡量遵循這樣乙個規則 修改是封閉的,擴充套件是開放的 也就是說在後期更改需求的時候,我們可以不改動以前的 而只需要通過擴充套件就可以滿足新需求。python的裝飾器就是幫助我們來實現這乙個目標的方法之一。通過乙個示例來理解裝飾器的作用,首先定義乙個列印當前時間的函式 i...