理解什麼是 裝飾器

2021-08-15 08:37:00 字數 617 閱讀 6768

#用裝飾器 測算 cpu 運算1億次 需要的時間  單程序 單執行緒

"""正常程式 

第一步 匯入時間模組

第二步 寫乙個pass 一億次的 程式

第三步 記錄 程式執行前的 時間

第四步 執行程式 並 記錄 程式執行後的時間

第五步 前後時間相減 ,就是 執行一億次的時間 列印結果 

思考?如果 測試  2億次 3億次 4億次 ....所需要的時間呢 ?是不是每次 都要 寫乙個計算

前後時間的步驟 ,有沒有 讓這個 步驟 重複利用的 辦法呢?

答案 就是 裝飾器。

裝飾器  是 什麼? 裝飾器 就是 不改變 原函式的作用 而額外 增加 的新功能,比如 以前的 手機  只能 打** ,現在 不改變  打**的 功能,只增加 拍照 功能。

@time 是裝飾器的語法 效果等同於 inputs=time(inputs)

inputs  是 主函式 ,time 是 裝飾 函式,在inputs 函式 的 基礎上增加

time 功能。每次呼叫這個函式的 時候 都能使用 time 這個裝飾函式

Python裝飾器為什麼難理解?

無論專案中還是面試都離不開裝飾器話題,裝飾器的強大在於它能夠在不修改原有業務邏輯的情況下對 進行擴充套件,許可權校驗 使用者認證 日誌記錄 效能測試 事務處理 快取等都是裝飾器的絕佳應用場景,它能夠最大程度地對 進行復用。但為什麼初學者對裝飾器的理解如此困難,我認為本質上是對python函式理解不到...

python裝飾器理解 python裝飾器理解

裝飾器 在不改變原函式的 和呼叫方法的基礎上,給原函式增加額外的功能 理解宣告 為了方便理解,以下例子採用最簡潔的函式和新增的功能 給原函式新增乙個執行時間 import time def timer func def inner func return inner timer func timer...

python裝飾器 理解Python裝飾器

在python中,對於乙個函式,若想在其執行前後做點什麼,那麼裝飾器是再好不過的選擇,話不多說,上 usr bin env coding utf 8 script 01.py author howie from functools import wraps def decorator func wr...