python裝飾器管理函式和類的注意點
本文教程操作環境:windows7系統、Python 3.9.1,DELL G3電腦。
1、注意點
(1)用裝飾器修飾的函式或類主要應用場景,分為直接返回原始函式(類)和巢狀定義的代理函式物件。
(2)若直接返回園函式或類,則可確保修飾前後的資料屬性一致,並能獲得原始資料的屬性資訊。
(3)若返回的是包裝原函式或類代理函式物件,則此時資料屬性便發生變化,這種情況下一般多適用於呼叫。
2、例項
# 傳統寫法,每一個方法都呼叫了logging方法來做日誌的收集,冗餘,改起來還麻煩; class TestDecorator: def print_title(self): logging(); print("hello 我是title"); def print_url(self): logging(); print("hello 我是url"); def logging(): import inspect # python內建的inspect.stack方法可以將你引用的模組檔案資訊保留在裡面,返回的是一個資料的資料形式 method_name = inspect.stack()[1][3]; print("Logger-info 進入方法 = {}".format(method_name)) def main(): decorator = TestDecorator(); decorator.print_title(); decorator.print_url(); if __name__ == '__main__': main();
以上就是python裝飾器管理函式和類的注意點,希望能對大家有所幫助。更多Python學習指路:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4301/viewspace-2830442/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python類裝飾器的使用注意Python
- Python之函式裝飾器Python函式
- Python基礎之特殊的函式--裝飾器和偏函式Python函式
- python函式裝飾器,重點必須掌握(二)Python函式
- 裝飾器函式函式
- python裝飾器2:類裝飾器Python
- Python裝飾函式Python函式
- Python 裝飾器裝飾類中的方法Python
- Python函式裝飾器高階用法Python函式
- 裝飾器,匿名函式函式
- 函式物件、裝飾器、閉包函式函式物件
- python函式程式設計 返回函式 匿名函式 裝飾器 偏函式Python函式程式設計
- Python學習之路26-函式裝飾器和閉包Python函式
- python基礎 python類的成員和裝飾器Python
- 測開之函式進階· 第7篇《裝飾器裝飾類,通用裝飾器,有啥區別呢?》函式
- Python 中級學習之函式裝飾器Python函式
- Python裝飾器的另類用法Python
- python函式修飾器(decorator)Python函式
- 利用裝飾器給python的函式加上型別限制Python函式型別
- 給python入門者的幫助,關於函式和裝飾器的理解。Python函式
- Python函數語言程式設計-高階函式、匿名函式、裝飾器、偏函式Python函數程式設計函式
- 閉包函式,裝飾器詳解函式
- python極簡教程06:生成式和裝飾器Python
- Python 的閉包和裝飾器Python
- python的裝飾器和閉包Python
- 《流暢的Python》 讀書筆記 第7章_函式裝飾器和閉包Python筆記函式
- Day10:函式與裝飾器函式
- 13. 閉包函式與裝飾器函式
- python 閉包和裝飾器Python
- python的裝飾器Python
- Python裝飾器探究——裝飾器引數Python
- python裝飾器和描述器的使用總結Python
- OpenHarmony自定義構建函式:@Builder裝飾器函式UI
- Python裝飾器-給你的咖啡加點料Python
- Python 裝飾器Python
- Python裝飾器Python
- 裝飾器 pythonPython
- 為什麼 Python 沒有函式過載?如何用裝飾器實現函式過載?Python函式