吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python函數與函數之間的調用

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:Python都知道 ? 2023-10-04 17:17 ? 次閱讀

函數與函數之間的調用

3.1 第一種情況 程序代碼如下:

def x(f):  
    def y():  
        print(1)  
    return y
def f():  
    print(2)
x(f)

運行結果:

無結果

分析:因為第9行中的x(f)中的f沒有帶括號,f只是一個普通的參數,所以程序只調用執行了x(f)函數,沒有調用執行f()函數。x(f)函數中雖然也定義了y()函數,但是x(f)函數中沒有調用執行y()函數,只是執行了return y。而y變量也沒有值,所以整個程序的返回值就為無結果。

3.2 第二種情況 程序代碼如下:

def x(f):  
    def y():  
        print(1)  
    return y
def f():  
    print(2)
x(f())

運行結果:

2

分析:因為第9行中的x(f())中的f()帶括號,所以程序先調用執行f()函數,先輸出2。然后2作為參數傳入到x(f)函數中,程序開始調用執行x(f)函數。x(f)函數中雖然也定義了y()函數,但是x(f)函數中沒有調用執行y()函數,只是執行了return y。而y變量也沒有值,所以調用執行x(f)函數沒有產生任何結果。因此該程序最終只輸出了2。

3.3 第三種情況 程序代碼如下:

def x(f):  
    def y():  
        print(1)  
    return y()
def f():  
    print(2)
x(f)

運行結果:

1

分析:因為第9行中的x(f)中的f沒有帶括號,f只是一個普通的參數,所以程序只調用執行了x(f)函數,沒有調用執行f()函數。x(f)函數中也定義了y()函數,并且返回是y()函數。因此程序調用執行了y()函數,輸出結果是1。

3.4 第四種情況

def x(f):  
    def y():  
        print(1)  
    return y()
def f():  
    print(2)
x(f())

運行結果:

2  
1

分析:因為第9行中的x(f())中的f()帶括號,所以程序調用執行了f()函數,先輸出2。然后2作為參數傳入到x(f)函數中,程序開始調用執行x(f)函數。x(f)函數中也定義了y()函數,并且返回是y()函數。因此程序也調用執行了y()函數,也輸出了1。最終該程序先后輸出了2和1。

3.5 第五種情況 程序代碼如下:

def x(f):  
    def y():  
        print(1)  
        print(f())  
    return y()
def f():  
    #print(2)  
    return 2
x(f)

運行結果:

1  
2

分析:因為第9行中的x(f)中的f沒有帶括號,f只是一個普通的參數,所以程序只是先調用執行了x(f)函數。在x(f)函數中也定義了y()函數,而且返回值是y()函數,所以程序會調用執行y()函數。在y()函數中先是執行print(1)語句,輸出1,接著執行print(f())語句,所以程序在這時也會調用執行f()函數,輸出2。最終該程序先后輸出了1和2。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 程序
    +關注

    關注

    117

    文章

    3796

    瀏覽量

    81419
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62978
  • 變量
    +關注

    關注

    0

    文章

    613

    瀏覽量

    28466
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85040
收藏 人收藏

    評論

    相關推薦

    一文詳解python調用函數

    函數被定義后,本身是不會自動執行的,只有在被調用后,函數才會被執行,得到相應的結果。但是在 Python 中我們要注意一個關鍵點,就是Python
    發表于 10-01 10:45 ?720次閱讀

    如何查看及更改函數/函數塊的調用環境

    模塊化設計的思想是把一些相似的功能(比如電機控制、閥控制)設計成函數函數塊,這樣就可以反復調用。其優點是:使程序架構更加清晰,避免重復編寫相似功能的代碼。不過可能會產生一個疑惑:既然PLC的程序
    的頭像 發表于 11-17 09:08 ?1036次閱讀
    如何查看及更改<b class='flag-5'>函數</b>/<b class='flag-5'>函數</b>塊的<b class='flag-5'>調用</b>環境

    python普通函數創建與調用

    python普通函數創建與調用函數是一種僅在調用時運行的代碼塊。您可以將數據(稱為參數)傳遞到函數
    發表于 03-01 16:32

    C++教程之函數的遞歸調用

    C++教程之函數的遞歸調用 在執行函數 f 的過程中,又要調用 f 函數本身,稱為函數的遞歸
    發表于 05-15 18:00 ?35次下載

    詳解python普通函數創建與調用

    函數是一種僅在調用時運行的代碼塊。您可以將數據(稱為參數)傳遞到函數中,然后由函數可以把數據作為結果返回。
    的頭像 發表于 03-01 16:32 ?1908次閱讀

    系統調用與普通的函數調用之間的區別

    函數之間是可以相互調用的,這很簡單很happy有沒有。 要知道是代碼、是函數就可以相互調用,不管你用什么語言寫的。
    的頭像 發表于 02-15 11:47 ?3502次閱讀
    系統<b class='flag-5'>調用</b>與普通的<b class='flag-5'>函數</b><b class='flag-5'>調用之間</b>的區別

    Python入門之什么是函數

    Python函數比我們想象的更為靈活。由于Python函數是對象,所以函數對象可以賦值給其他的名字、傳遞給其他
    的頭像 發表于 02-21 14:24 ?528次閱讀

    Python函數調用是什么

    定義函數的關鍵字def。def后面緊跟空格。函數名可以自己命名。
    的頭像 發表于 02-23 10:57 ?1017次閱讀

    C語言函數調用的形式及過程

    C語言函數調用時的數據傳遞 在調用有參函數時,主調函數和被調函數
    的頭像 發表于 03-10 14:28 ?1898次閱讀

    什么是函數調用

    函數調用,就是使用我們已經定義好的函數,或者C語言自帶的庫函數
    的頭像 發表于 04-04 17:21 ?5980次閱讀

    SCL中調用函數的示例

    在此,可插入函數 (FC) 調用函數塊 (FB) 調用函數塊可作為單實例、多重實例或參數實例進行調用
    的頭像 發表于 06-06 10:18 ?2321次閱讀

    python定義函數調用函數的順序

    定義函數調用函數的順序 函數被定義后,本身是不會自動執行的,只有在被調用后,函數才會被執行,得
    的頭像 發表于 10-04 17:17 ?1521次閱讀

    Python 函數參數分類

    文章應該對你會有不小的幫助。 接下來是正文。 1. 參數分類 函數,在定義的時候,可以有參數的,也可以沒有參數。 從函數定義的角度來看,參數可以分為兩種: 必選參數 :調用函數時必須要
    的頭像 發表于 10-21 10:45 ?884次閱讀

    python如何定義一個函數

    一、Python3 函數 函數是組織好的,可重復使用的,用來實現單一,或相關聯功能的代碼段。 函數能提高應用的模塊性,和代碼的重復利用率。你已經知道
    的頭像 發表于 11-14 11:26 ?777次閱讀

    python調用math函數的方法

    中。本文將詳細介紹math模塊中的各種數學函數調用方法,包括函數的功能、參數的使用和返回值的含義等方面,以幫助讀者更好地理解和應用這些函數。 一、導入math模塊 要使用math模塊
    的頭像 發表于 11-22 11:01 ?3163次閱讀
    大发888线上娱乐城百家乐| 海王星娱乐网| 免费百家乐规律| 百家乐官网如何投注法| 威尼斯人娱乐城线路lm0| 百家乐官网正负计算| 星港城百家乐官网娱乐城| 最好的棋牌游戏平台| 澳门百家乐官网站| 阿克苏市| 总格24画的名字好吗| 澳门百家乐官网技巧皇冠网| 大发888娱乐场下载地址| 百家乐最长的缆| 百家乐官网英皇娱乐场| 赌百家乐官网的高手| 博彩评级网| 百家乐翻天百度影音| 百家乐电子路单下载| 属狗与属鸡做生意| 百家乐官网的弱点| 线上百家乐官网开户| 额济纳旗| 寿光市| 爱拼| 娱乐城注册| 大发888 大发888官网| 百家乐大| 金木棉百家乐网络破解| 澳门百家乐先赢后输| 百家乐有没有稳赢| 宾利百家乐现金网| 百家乐网络公式| 百家乐打庄技巧| 属虎与属鼠做生意好吗| 免费百家乐官网过滤工具| 宝马百家乐官网的玩法技巧和规则 | 百家乐官网娱乐注册就送| 胶州市| 许昌县| 百家乐官网台布兄弟|