二十一、深入Python强大的装饰器
生活随笔
收集整理的這篇文章主要介紹了
二十一、深入Python强大的装饰器
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
@Author: Runsen
文章目錄
- 閉包
- 裝飾器
- 嵌套函數(shù)的裝飾器
- 帶參數(shù)嵌套函數(shù)的裝飾器
- 類裝飾器
- 嵌套裝飾器
@Date:2019年07月11日
最近有同學(xué)在問關(guān)于Python中裝飾器的問題,說不太理解裝飾器的裝飾過程。
那么在下面Runsen來給大家深入講解一下裝飾器的整個(gè)實(shí)現(xiàn)過程的。
閉包
想要理解Python中的裝飾器,不得不先理解閉包(closure)這一概念。
閉包就應(yīng)該想起了嵌套函數(shù),也可以將閉包理解為一種特殊的函數(shù),這種函數(shù)由兩個(gè)函數(shù)的嵌套組成,外函數(shù)和內(nèi)函數(shù)。
def 外層函數(shù)(參數(shù)):def 內(nèi)層函數(shù)():print("內(nèi)層函數(shù)執(zhí)行", 參數(shù))return 內(nèi)層函數(shù)內(nèi)層函數(shù)的引用 = 外層函數(shù)("傳入?yún)?shù)") 內(nèi)層函數(shù)的引用()在一個(gè)外函數(shù)中定義了一個(gè)內(nèi)函數(shù),內(nèi)函數(shù)里運(yùn)用了外函數(shù)的臨時(shí)變量,并且外函數(shù)的返回值是內(nèi)函數(shù)的引用。這樣就構(gòu)成了一個(gè)閉包。
下面舉一個(gè)具體的閉包函數(shù)的實(shí)例,代碼如下。
# outer是外部函數(shù) def outer(a):# inner是內(nèi)函數(shù)def inner( b ):#在內(nèi)函數(shù)中總結(jié)
以上是生活随笔為你收集整理的二十一、深入Python强大的装饰器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 十九、Seaborn数据可视化
- 下一篇: 中美外长会谈+是哪个社报道的?