亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python函數(shù)的兩種嵌套方法小結(jié)

 更新時(shí)間:2025年04月01日 15:48:06   作者:清風(fēng)明月_xf  
這篇文章主要介紹了python函數(shù)的兩種嵌套方法小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

函數(shù)嵌套的兩種方式:

一、交叉嵌套

交叉嵌套的方式是在本函數(shù)中調(diào)用同一級(jí)或上一級(jí)函數(shù)的嵌套方法:

一種編碼形式:

# -*- coding: utf-8 -*-
# @Time    : 2022/8/12 15:39
#定義函數(shù)func()
def func(foo):
    print(1)
    foo()
    print(3)

def a():
    print(1)

#調(diào)用函數(shù)func()
b = func(a)
print(b)

輸出結(jié)果:

1
1
3
None

首先,程序會(huì)將 Python 文件中頂格的代碼運(yùn)行。函數(shù) func 和 a 都是先開(kāi)辟內(nèi)存空間存儲(chǔ)起來(lái),但不會(huì)被執(zhí)行。當(dāng)程序走到賦值操作時(shí),會(huì)先執(zhí)行等號(hào)右邊的代碼。函數(shù) func 被調(diào)用,函數(shù) a 作為參數(shù)被傳到 func 中。func 函數(shù)被執(zhí)行,順序也是從上往下,先是把 1 打印出來(lái),然后調(diào)用參數(shù) foo。

需要注意的是,foo 是形參,實(shí)參是 a。調(diào)用 foo 在此時(shí)的意思是調(diào)用函數(shù) a。函數(shù) a 被調(diào)用,又打印出一個(gè) 1 來(lái)。函數(shù) a 運(yùn)行完畢,返回至函數(shù) func,繼續(xù)執(zhí)行下面的代碼,打印出 3 來(lái)。最后,函數(shù)默認(rèn)返回 None,賦值給 b。程序運(yùn)行結(jié)束。

另一種編碼形式:

def func():
    print(1)
    print("我太難了")
    print(2)

def foo(b):
    print(3)
    ss = b()
    print(ss)
    print(4)

def f(a,b):
    a(b)

f(foo,func)

輸出結(jié)果:

3
1
我太難了
2
None
4

跟上面一樣,先將函數(shù)全都加載到新開(kāi)辟的內(nèi)存空間中,但不執(zhí)行。到最后 f 函數(shù)被調(diào)用,foo 和 func 兩個(gè)函數(shù)作為參數(shù)被傳到函數(shù) f 中。在函數(shù) f 中,foo 函數(shù)被調(diào)用,參數(shù)為 func 函數(shù)。進(jìn)入到 foo 函數(shù),先打印 3。到賦值語(yǔ)句,先執(zhí)行等號(hào)右邊的代碼,函數(shù) func 被調(diào)用。

在函數(shù) func 中,打印三個(gè)內(nèi)容 1、我太難了 和 2。函數(shù)默認(rèn)返回值為 None,被賦值給 ss。打印 ss 就是打印 None。最后打印 4,然后返回到函數(shù) f,再返回到全局空間。執(zhí)行結(jié)束。

二、回環(huán)嵌套

回環(huán)函數(shù)就是在函數(shù)中調(diào)用下級(jí)函數(shù)的嵌套方法
代碼如下(示例):

def func(a,b):
    def foo(b,a):
        print(b,a)
    return foo(a,b) #先執(zhí)行函數(shù)調(diào)用
a = func(4,7)
print(a)

輸出結(jié)果:

4 7
None

函數(shù)依然先存儲(chǔ)在新開(kāi)辟的空間中不會(huì)被調(diào)用。運(yùn)行到賦值語(yǔ)句時(shí),還是先執(zhí)行等號(hào)右邊的代碼,將兩個(gè)數(shù)字傳到函數(shù) func中。在函數(shù)內(nèi)部,依然是先開(kāi)辟空間把函數(shù) foo 放進(jìn)去。運(yùn)行到 return 不會(huì)馬上終止函數(shù),而是先運(yùn)行 return 后面的代碼。foo 函數(shù)被調(diào)用,傳進(jìn)去的值是 4 和 7,然后打印出來(lái)。

需要注意的是,函數(shù) foo 的形參與函數(shù) func 的形參是相同的,不要給搞混了。日常寫(xiě)代碼時(shí)不建議這樣使用。打印出 4 和 7 之后,運(yùn)行到函數(shù)最后一行,函數(shù)默認(rèn)返回 None。然后再賦值給 a,打印出來(lái)。

補(bǔ)充:函數(shù)調(diào)用時(shí)的實(shí)參和形參之間傳遞

定義函數(shù)基本格式如下:

def 函數(shù)名(參數(shù)表):
	函數(shù)語(yǔ)句
return 返回值

return代表著函數(shù)結(jié)束,選擇性地返回一個(gè)值給調(diào)用函數(shù)。參數(shù)和返回值都不是必須有的。

定義函數(shù)時(shí),參數(shù)表中的參數(shù)稱(chēng)為形式參數(shù),簡(jiǎn)稱(chēng)形參;
調(diào)用函數(shù)時(shí),參數(shù)表中的參數(shù)稱(chēng)為實(shí)際參數(shù),簡(jiǎn)稱(chēng)實(shí)參。

到此這篇關(guān)于python函數(shù)的兩種嵌套方法小結(jié)的文章就介紹到這了,更多相關(guān)python函數(shù)嵌套內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?Pygame實(shí)戰(zhàn)之歡樂(lè)打地鼠游戲

    Python?Pygame實(shí)戰(zhàn)之歡樂(lè)打地鼠游戲

    打地鼠是一款比較經(jīng)典的敏捷類(lèi)游戲,我們可以在許多商場(chǎng)門(mén)口看到這類(lèi)游戲機(jī),在電腦和手機(jī)上也有許多類(lèi)似的游戲。本文將用Python中的Pygame庫(kù)實(shí)現(xiàn)這一游戲,需要的可以參考一下
    2022-02-02
  • python matlibplot繪制多條曲線(xiàn)圖

    python matlibplot繪制多條曲線(xiàn)圖

    這篇文章主要為大家詳細(xì)介紹了python matlibplot繪制多條曲線(xiàn)圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Python中的并發(fā)處理之a(chǎn)syncio包使用的詳解

    Python中的并發(fā)處理之a(chǎn)syncio包使用的詳解

    本篇文章主要介紹了Python中的并發(fā)處理之a(chǎn)syncio包使用的詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • 用 Django 開(kāi)發(fā)一個(gè) Python Web API的方法步驟

    用 Django 開(kāi)發(fā)一個(gè) Python Web API的方法步驟

    這篇文章主要介紹了用 Django 開(kāi)發(fā)一個(gè) Python Web API的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 總結(jié)python中pass的作用

    總結(jié)python中pass的作用

    在本篇內(nèi)容里我們給讀者們分享了關(guān)于python中pass的作用以及相關(guān)實(shí)例代碼,有需要的朋友們學(xué)習(xí)下。
    2019-02-02
  • Python MNIST手寫(xiě)體識(shí)別詳解與試練

    Python MNIST手寫(xiě)體識(shí)別詳解與試練

    MNIST(官方網(wǎng)站)是非常有名的手寫(xiě)體數(shù)字識(shí)別數(shù)據(jù)集,在Tensorflow的官方網(wǎng)站里,第一個(gè)就拿它來(lái)做實(shí)戰(zhàn)講解,咱們也以此作為開(kāi)始的項(xiàng)目
    2021-11-11
  • 如何用Python實(shí)現(xiàn)自動(dòng)發(fā)送微博

    如何用Python實(shí)現(xiàn)自動(dòng)發(fā)送微博

    大家好,本篇文章主要講的是如何用Python實(shí)現(xiàn)自動(dòng)發(fā)送微博,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏
    2022-01-01
  • Pytorch實(shí)現(xiàn)LSTM案例總結(jié)學(xué)習(xí)

    Pytorch實(shí)現(xiàn)LSTM案例總結(jié)學(xué)習(xí)

    這篇文章主要介紹了Pytorch實(shí)現(xiàn)LSTM案例總結(jié)學(xué)習(xí),文章通過(guò)構(gòu)建網(wǎng)絡(luò)層、前向傳播forward()展開(kāi)主題介紹,需要的小伙吧可以參考一下
    2022-07-07
  • Python端口掃描簡(jiǎn)單程序

    Python端口掃描簡(jiǎn)單程序

    這篇文章主要為大家詳細(xì)介紹了Python端口掃描簡(jiǎn)單程序的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • 淺談python之高階函數(shù)和匿名函數(shù)

    淺談python之高階函數(shù)和匿名函數(shù)

    這篇文章主要介紹了python之高階函數(shù)和匿名函數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03

最新評(píng)論