python函數嵌套定義


python的這個特性是很特別的,與C#和C++都不一樣。請看下面的例子

def outFun():   
    def innerFun_0():#1.在內部定義一個函數
        print("i am first innerFun")
        return    
    
    def innerFun_1():#2.在內部定義另外一個函數
        print("i am second innerFun")
        return      
    
    innerFun_0()   #3.使用innerFun_0
    innerFun_1()   #4.使用innerFun_2
    
    return

outFun()#5.調用outFun函數
    

執行結果:

i am first innerFun
i am second innerFun

 

在outFun這個函數內部,定義了innerFun_0和innerFun_1,隨后也使用了這兩個函數。

其實完全可以吧這兩個函數寫在outFun的外面,如下,執行結果一樣。

def innerFun_0():
    print("i am first innerFun")
    return    

def innerFun_1():
    print("i am second innerFun")
    return    

def outFun():   
    innerFun_0()  
    innerFun_1()   
    return

outFun()#調用outFun函數

 

那么,問題來了,為啥python要搞這種方式呢,可能就是為了說明勞資怎么玩都可以,就是靈活

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM