本篇文章給大家分享的是有關(guān)怎么在python中修飾帶參數(shù)的裝飾器,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)公司專注于府谷企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,商城網(wǎng)站建設(shè)。府谷網(wǎng)站建設(shè)公司,為府谷等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站建設(shè),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
python的五大特點(diǎn):1.簡單易學(xué),開發(fā)程序時,專注的是解決問題,而不是搞明白語言本身。2.面向?qū)ο螅c其他主要的語言如C++和Java相比, Python以一種非常強(qiáng)大又簡單的方式實(shí)現(xiàn)面向?qū)ο缶幊獭?.可移植性,Python程序無需修改就可以在各種平臺上運(yùn)行。4.解釋性,Python語言寫的程序不需要編譯成二進(jìn)制代碼,可以直接從源代碼運(yùn)行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。
1、概念
修飾帶有參數(shù)的函數(shù)的裝飾器,裝飾器的作用是返回一個函數(shù)的代理。
2、修飾方法
(1)定義一個裝飾器函數(shù)并傳遞類對象
(2)在定義的裝飾器函數(shù)內(nèi)部定義一個代理函數(shù)對象,此代理函數(shù)對象與原函數(shù)傳遞的參數(shù)一致,并負(fù)責(zé)處理裝飾器攔截方法等工作,最后返回一個類對象
(3)使用裝飾器修飾類必須重載運(yùn)算符__call__保證可被動態(tài)調(diào)用(類似與反射創(chuàng)建類對象)
3、實(shí)例
def decorator(fn): def proxy(*args, **kwargs): u""" 作為代理函數(shù)來調(diào)用原有的函數(shù),并對原來的函數(shù)進(jìn)行auth的校驗(yàn) :param args: :param kwargs: :return: """ print("auth checking") return fn(*args, **kwargs) return proxy @decoratordef fn(a=9, b=10): print(a+b)
以上就是怎么在python中修飾帶參數(shù)的裝飾器,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。