新聞中心

python函數(shù)的定義
定義函數(shù),也就是創(chuàng)建一個(gè)函數(shù),可以理解為創(chuàng)建一個(gè)具有某些用途的工具。定義函數(shù)需要用 def 關(guān)鍵字實(shí)現(xiàn),具體的語(yǔ)法格式如下:
def 函數(shù)名(形參列表): //由零條到多條可執(zhí)行語(yǔ)句組成的代碼塊 [return [返回值]]
其中,用 [] 括起來(lái)的為可選擇部分,即可以使用,也可以省略。
此格式中,各部分參數(shù)的含義如下:
函數(shù)名:從語(yǔ)法角度來(lái)看,函數(shù)名只要是一個(gè)合法的標(biāo)識(shí)符即可;從程序的可讀性角度來(lái)看,函數(shù)名應(yīng)該由一個(gè)或多個(gè)有意義的單詞連綴而成,每個(gè)單詞的字母全部小寫(xiě),單詞與單詞之間使用下畫(huà)線分隔。
相關(guān)推薦:《Python教程》
形參列表:用于定義該函數(shù)可以接收的參數(shù)。形參列表由多個(gè)形參名組成,多個(gè)形參名之間以英文逗號(hào)(,)隔開(kāi)。一旦在定義函數(shù)時(shí)指定了形參列表,調(diào)用該函數(shù)時(shí)就必須傳入相應(yīng)的參數(shù)值,也就是說(shuō),誰(shuí)調(diào)用函數(shù)誰(shuí)負(fù)責(zé)為形參賦值。
注意,在創(chuàng)建函數(shù)時(shí),即使函數(shù)不需要參數(shù),也必須保留一對(duì)空的“()”,否則 Python 解釋器將提示“invaild syntax”錯(cuò)誤。另外,如果想定義一個(gè)沒(méi)有任何功能的空函數(shù),可以使用 pass 語(yǔ)句作為占位符。
下面程序定義了兩個(gè)函數(shù):
def my_max(x, y) :
# 定義一個(gè)變量z,該變量等于x、y中較大的值
z = x if x > y else y
# 返回變量z的值
return z
# 定義一個(gè)函數(shù),聲明一個(gè)形參
def say_hi(name) :
print("===正在執(zhí)行say_hi()函數(shù)===")
return name + ",您好!"Python函數(shù)的調(diào)用
調(diào)用函數(shù)也就是執(zhí)行函數(shù)。如果把創(chuàng)建的函數(shù)理解為一個(gè)具有某種用途的工具,那么調(diào)用函數(shù)就相當(dāng)于使用該工具。
函數(shù)調(diào)用的基本語(yǔ)法格式如下所示:
函數(shù)名([形參值])
其中,函數(shù)名即指的是要調(diào)用的函數(shù)的名稱(chēng);形參值指的是當(dāng)初創(chuàng)建函數(shù)時(shí)要求傳入的各個(gè)形參的值。需要注意的是,創(chuàng)建函數(shù)有多少個(gè)形參,那么調(diào)用時(shí)就需要傳入多少個(gè)值,且順序必須和創(chuàng)建函數(shù)時(shí)一致。即便該函數(shù)沒(méi)有參數(shù),函數(shù)名后的小括號(hào)也不能省略。
例如,調(diào)用前面創(chuàng)建的那 2 個(gè)函數(shù),執(zhí)行代碼如下:
a = 6
b = 9
# 調(diào)用my_max()函數(shù),將函數(shù)返回值賦值給result變量
result = my_max(a , b) # ①
print("result:", result)
# 調(diào)用say_hi()函數(shù),直接輸出函數(shù)的返回值
print(say_hi("孫悟空")) # ②上面程序中,分別在 ① 號(hào)、② 號(hào)代碼處調(diào)用了 my_max() 和 say_hi() 這兩個(gè)函數(shù)。從下面的運(yùn)行結(jié)果可以看出,當(dāng)程序調(diào)用一個(gè)函數(shù)時(shí),既可以把調(diào)用函數(shù)的返回值賦值給指定變量,也可以將函數(shù)的返回值傳給另一個(gè)函數(shù),作為另一個(gè)函數(shù)的參數(shù)。
運(yùn)行上面程序,將可以看到如下運(yùn)行結(jié)果:
result: 9 ===正在執(zhí)行say_hi()函數(shù)=== 孫悟空,您好!
另外,在函數(shù)體中使用 return 語(yǔ)句可以顯式地返回一個(gè)值,return 語(yǔ)句返回的值既可是有值的變量,也可是一個(gè)表達(dá)式。例如上面的 my_max() 函數(shù),實(shí)際上也可簡(jiǎn)寫(xiě)為如下形式:
def my_max(x, y) : # 返回一個(gè)表達(dá)式 return x if x > y else y
本文名稱(chēng):創(chuàng)新互聯(lián)Python教程:python如何定義和調(diào)用函數(shù)
本文URL:http://www.dlmjj.cn/article/dhspeoc.html


咨詢(xún)
建站咨詢(xún)
