函數是一段具有特定功能的、可重復使用的代碼段。它能夠提高程序的模塊化和代碼的復用率。Python提供了很多內建函數(如print()、input()、int()函數等)和標准庫函數(如math中的sqrt()函數)。除此外,用戶還可以自己編寫函數,稱為自定義函數。
函數的定義
在Python中,定義函數的一般形式為:
def 函數名([形式參數列表]):
函數體
def關鍵字用來定義函數;函數名可以是任何有效的Python標識符;函數名后的圓括號內是形式參數列表(簡稱形參),形參是調用該函數時傳遞給它的值,可以是零個或多個,當傳遞多個參數時各參數之間由逗號分隔。函數體是函數每次被調用時執行的代碼,由一行或多行語句組成。
定義函數時需要注意:
(1)即使該函數不需要接收任何參數,也必須保留 一對空的圓括號。
(2)括號后面的冒號不能省略。
(3)函數體相對於def關鍵字必須保持一定的空格縮進。
例如:
def add(x,y): # 定義一個加法函數
return x+y # 返回x+y的值(函數體)
函數的調用
定義了函數后,就相當於有了一段具有特定功能的代碼,要想執行這些代碼,需要調用函數。
函數調用的一般形式為:
函數名([實際參數列表])
此時,實際參數列表(簡稱實參)中給出要傳入函數內部的具體值。
add(1,2) # 調用add(x,y)函數,實參為1,2
結果為:3。
函數的返回值
函數並非總是直接輸出數據,它還可以處理一些數據,並返回一個或一組值。函數返回的值被稱為返回值。
return語句用來退出函數並將程序返回到函數被調用的位置繼續執行。return語句可以同時返回0個、1個或多個結果給函數被調用處的變量。
注意:如果函數沒有return語句,Python將認為該函數以return None結束,即返回空值。函數也可以用return語句返回多個值,多個值以元組類型保存。