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要搞這種方式呢,可能就是為了說明勞資怎么玩都可以,就是靈活
