欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解python中@的用法

 更新時(shí)間:2019年03月27日 08:57:01   作者:occamo  
這篇文章主要介紹了python中@的用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

python中@的用法

@是一個(gè)裝飾器,針對(duì)函數(shù),起調(diào)用傳參的作用。
有修飾和被修飾的區(qū)別,‘@function'作為一個(gè)裝飾器,用來(lái)修飾緊跟著的函數(shù)(可以是另一個(gè)裝飾器,也可以是函數(shù)定義)。

代碼1

def funA(desA):
 print("It's funA")

def funB(desB):
 print("It's funB")

@funA
def funC():
 print("It's funC")

結(jié)果1

It's funA

分析1

@funA 修飾函數(shù)定義def funC(),將funC()賦值給funA()的形參。
執(zhí)行的時(shí)候由上而下,先定義funA、funB,然后運(yùn)行funA(funC())。
此時(shí)desA=funC(),然后funA()輸出‘It's funA'。

代碼2

def funA(desA):
 print("It's funA")

def funB(desB):
 print("It's funB")

@funB
@funA
def funC():
 print("It's funC")

結(jié)果2

It's funA
It's funB

分析2

@funB 修飾裝飾器@funA,@funA 修飾函數(shù)定義def funC(),將funC()賦值給funA()的形參,再將funA(funC())賦值給funB()。
執(zhí)行的時(shí)候由上而下,先定義funA、funB,然后運(yùn)行funB(funA(funC()))。
此時(shí)desA=funC(),然后funA()輸出‘It's funA';desB=funA(funC()),然后funB()輸出‘It's funB'。

代碼3

def funA(desA):
 print("It's funA")

 print('---')
 print(desA)
 desA()
 print('---')

def funB(desB):
 print("It's funB")

@funB
@funA
def funC():
 print("It's funC")

結(jié)果3

It's funA
< function funC at 0x000001A5FF763C80 >
It's funC
It's funB

分析3

同上,為了更直觀地看參數(shù)傳遞,打印desA,其傳的是funC()的地址,即desA現(xiàn)在為函數(shù)desA()。
執(zhí)行desA()即執(zhí)行funC(),desA=desA()=funC()。

代碼4

def funA(desA):
 print("It's funA")

def funB(desB):
 print("It's funB")
 print('---')
 print(desB)

@funB
@funA
def funC():
 print("It's funC")

結(jié)果4

It's funA
It's funB
None

分析4

上面將funC()作為參數(shù)傳給funA,那么funA(funC())怎么傳給funB()呢?打印desB,發(fā)現(xiàn)并沒(méi)有參數(shù)傳遞。
是否可以理解為當(dāng)‘裝飾器' 修飾 ‘裝飾器'時(shí),僅是調(diào)用函數(shù)。

以上所述是小編給大家介紹的python中@的用法詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Python tkinter實(shí)現(xiàn)桌面軟件流程詳解

    Python tkinter實(shí)現(xiàn)桌面軟件流程詳解

    這篇文章主要介紹了Python tkinter做一個(gè)好用的桌面軟件,100%你會(huì)愛(ài)上它,文中的示例代碼講解詳細(xì),快跟小編一起動(dòng)手試一試吧
    2022-10-10
  • 用Python寫(xiě)一個(gè)無(wú)界面的2048小游戲

    用Python寫(xiě)一個(gè)無(wú)界面的2048小游戲

    這篇文章主要介紹了用Python寫(xiě)一個(gè)無(wú)界面的2048小游戲的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • 非遞歸的輸出1-N的全排列實(shí)例(推薦)

    非遞歸的輸出1-N的全排列實(shí)例(推薦)

    下面小編就為大家?guī)?lái)一篇非遞歸的輸出1-N的全排列實(shí)例(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • Python虛擬環(huán)境庫(kù)virtualenvwrapper安裝及使用

    Python虛擬環(huán)境庫(kù)virtualenvwrapper安裝及使用

    這篇文章主要介紹了Python虛擬環(huán)境庫(kù)virtualenvwrapper安裝及使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Python聊天室程序(基礎(chǔ)版)

    Python聊天室程序(基礎(chǔ)版)

    這篇文章主要為大家詳細(xì)介紹了Python聊天室程序的基礎(chǔ)版,包含客戶端和服務(wù)器端兩部分,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • pandas 按照特定順序輸出的實(shí)現(xiàn)代碼

    pandas 按照特定順序輸出的實(shí)現(xiàn)代碼

    這篇文章主要介紹了pandas 按照特定順序輸出的實(shí)現(xiàn)代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • Python機(jī)器學(xué)習(xí)之AdaBoost算法

    Python機(jī)器學(xué)習(xí)之AdaBoost算法

    今天帶大家來(lái)學(xué)習(xí)Python機(jī)器學(xué)習(xí),文中對(duì)AdaBoost算法介紹的很詳細(xì),有非常多的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • Python 機(jī)器學(xué)習(xí)第一章環(huán)境配置圖解流程

    Python 機(jī)器學(xué)習(xí)第一章環(huán)境配置圖解流程

    機(jī)器學(xué)習(xí)是一類(lèi)算法的總稱(chēng),這些算法企圖從大量歷史數(shù)據(jù)中挖掘出其中隱含的規(guī)律,并用于預(yù)測(cè)或者分類(lèi),更具體的說(shuō),機(jī)器學(xué)習(xí)可以看作是尋找一個(gè)函數(shù),輸入是樣本數(shù)據(jù),輸出是期望的結(jié)果,只是這個(gè)函數(shù)過(guò)于復(fù)雜,以至于不太方便形式化表達(dá)
    2021-11-11
  • python實(shí)現(xiàn)淘寶購(gòu)物系統(tǒng)

    python實(shí)現(xiàn)淘寶購(gòu)物系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)易的淘寶購(gòu)物系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • python logging日志模塊的詳解

    python logging日志模塊的詳解

    這篇文章主要介紹了python logging日志模塊的詳解的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10

最新評(píng)論