python裝飾器有哪些作用
1、日誌記錄,在某些情況下,需要統計或記錄功能執行的效率,但不想改變功能本身的內容,裝飾器是很好的手段。
import timeit def timer(func): def wrapper(n): start = timeit.default_timer() result = func(n) stop = timeit.default_timer() print('Time: ', stop - start) return result return wrappe
2、作為快取,裝飾器的另一個好的應用場景是作為快取。
例如lru將函式輸入和返回值作為快取,以計算斐波的契數為例,n值的大小為30,執行效率大不相同。
def fib(n): if n < 2: return 1 else: return fib(n - 1) + fib(n - 2) @functools.lru_cache(128) def fib_cache(n): if n < 2: return 1 else: return fib_cache(n - 1) + fib_cache(n - 2) Time: 0.2855725 Time: 3.899999999995574e-05
以上就是python裝飾器的作用,希望對大家有所幫助。更多Python學習指路:
本文教程操作環境:windows7系統、Python 3.9.1,DELL G3電腦。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2144/viewspace-2829622/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python裝飾器2:類裝飾器Python
- Python 裝飾器Python
- Python裝飾器Python
- 1.5.3 Python裝飾器Python
- Python 裝飾器(一)Python
- python的裝飾器Python
- Python 裝飾器原理Python
- Python裝飾器模式Python模式
- Python深入05 裝飾器Python
- python 之裝飾器(decorator)Python
- Python中的裝飾器Python
- Python裝飾器詳解Python
- python裝飾器入門探究Python
- python 裝飾器 part2Python
- day11(python)裝飾器Python
- python中裝飾器的原理Python
- Python裝飾器高階用法Python
- python 裝飾器小白學習Python
- 【python】閉包與裝飾器Python
- Python裝飾器的前世今生Python
- python的裝飾器@的用法Python
- Python深入分享之裝飾器Python
- Python 語法之裝飾器Python
- Python3 裝飾器解析Python
- Python閉包與裝飾器Python
- Python之函式裝飾器Python函式
- Python 裝飾器簡單示例Python
- python裝飾器是什麼Python
- 粗淺聊聊Python裝飾器Python
- Python迭代器&生成器&裝飾器Python
- Python的容器有哪些?分別有什麼作用?Python
- python幾種裝飾器的用法Python
- Python學習筆記 - 裝飾器Python筆記
- Python 裝飾器你也會用Python
- Python:從閉包到裝飾器Python
- python中的裝飾器介紹Python
- python3 裝飾器全解Python
- Python設計模式-裝飾器模式Python設計模式