活學活用python 四 函式

2021-09-12 02:54:33 字數 1161 閱讀 7482

使用函式的目的

※ 降低程式設計的難度

※ **重用

函式的定義:使用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 ...