更新時間:2018-08-17 來源:黑馬程序員技術社區(qū) 瀏覽量:
python裝飾器就是用于拓展原來函數(shù)功能的一種函數(shù),這個函數(shù)的特殊之處在于它的返回值也是一個函數(shù),使用python裝飾器的好處就是在不用更改原函數(shù)的代碼前提下給函數(shù)增加新的功能。一般而言,我們要想拓展原來函數(shù)代碼,最直接的辦法就是侵入代碼里面修改,但是有時候需要修改的代碼特別重要,不允許在里面修改,這時候就需要用到裝飾器了。
這里的set_fun函數(shù)就是最原始的裝飾器,它的參數(shù)是一個函數(shù),然后返回值也是一個函數(shù)。其中作為參數(shù)的這個函數(shù)test()就在返回函數(shù)wrapper()的內部執(zhí)行。然后在函數(shù)test()前面加上@set_fun,test()函數(shù)就相當于被注入了新的功能,現(xiàn)在只要調用test(),它就已經(jīng)變身為“新的更多功能”的函數(shù)了。
多個裝飾器執(zhí)行的順序就是從最后一個裝飾器開始,執(zhí)行到第一個裝飾器,再執(zhí)行函數(shù)本身。
作者:黑馬程序員人工智能+Python培訓學院
首發(fā):http://www.shuizu.net.cn/special/pythonzly/index.shtml
【AI設計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19【AI大模型開發(fā)-Python】畢業(yè)33個工作日,就業(yè)率已達到94.55%,班均薪資20763元
2025-09-19【AI智能應用開發(fā)-Java】畢業(yè)當天offer率91%,薪資1W+占比54.2%,班級均薪12k+
2025-09-19