使用函式的目的
※ 降低程式設計的難度
※ **重用
函式的定義:使用def語句
def (): # <——冒號不可缺少
※ 函式名::任何有效的python識別符號
※ 引數列表:呼叫函式時傳遞給它的值
※ 引數個數大於等於零
※ 多個引數由逗號分隔
※ 形式引數:定義函式時,函式名後面圓括號中的變數,簡稱「形參」。形參只在函式內部有效。
※ 實際引數:呼叫函式時,函式名後面圓括號中的變數,簡稱「實參」。
※ return語句:結束函式呼叫,並將結果返回給呼叫者。
※ reture語句是可選的,可出現在函式體的任意位置
※ 沒有return語句,函式在函式體結束位置將控制權返回給呼叫者。
※ 函式介面:返回值和引數
※ 函式傳遞資訊的主要途徑
※ 通過函式返回值的方式傳遞資訊
※ 通過引數傳遞資訊
函式的返回值:
※ return語句:程式退出該函式,並返回到函式被呼叫到的地方。
※ return語句返回的值傳遞給呼叫程式。
※ 返回值有兩種形式:返回乙個值、返回多個值
※ 無返回值的return語句等價於 return none,none是表示沒有任何東西的特殊型別
※ 返回值可以是乙個變數,也可以是乙個表示式
改變引數值的函式
※ 函式的形參只接收了實參的值,給形參賦值並不影響實參
※ python可以通過值來傳遞引數
遞迴的定義
※ 遞迴:函式定義中使用函式自身的方法
※ 經典例子:階乘
n! = (n-1)(n-2)....(1)
※ 舉例:5! = 5(4)(3)(2) = 5 * 4
※ 推廣:n! = n(n-1)!
※ 階乘的遞迴定義: 1 n=0
n! =
n(n-1)!
※ 0的階乘:定義為1
※ 以上被稱作遞迴的基例。
# 階乘的遞迴定義函式
def fact(n):
if n == 0:
return 1
else:
return n * fact(n-1) #在fact函式內部,呼叫自己
活學活用C Primer
函式原型string make plural size t ctr,const string word,const string ending return ctr 1 word word ending 在用的時候其實不需要這麼麻煩,比如如果是出現一次,time就是time,如果超過一次,那麼tim...
活學活用golang的反射機制
var data map string inte ce type fruit struct func newfruit data map string inte ce fruit return s func main 這樣實現簡單快速,但也有缺點 是否有更好的解決方法,自動遍歷struct物件,並進...
協程的活學活用(一)
之前寫協程的時候偶爾會遇到一些物體被關了沒有啟用,掛載上面的指令碼開啟的協程也不執行了。為了徹底解決這個問題,我聽取同事建議寫了這個工具指令碼,當然你也可以嘗試協程單例或者其他模式的。主要目的就是讓協程都在乙個固定不刪除的物體上同一開啟和停止。namespace toolsbylm private ...