自定義函數(shù)的簡(jiǎn)單規(guī)則:
(1)函數(shù)代碼塊以def關(guān)鍵詞開(kāi)頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)“()”。
(2)所有傳入的參數(shù)和自變量都必須放在圓括號(hào)中,可以在圓括號(hào)中定義參數(shù)。
(3)函數(shù)的第一行語(yǔ)句可以選擇性使用文檔字符串,用于存放函數(shù)說(shuō)明。
(4)函數(shù)內(nèi)容以冒號(hào)開(kāi)始,并且要縮進(jìn)。
(5)return[表達(dá)式]結(jié)束函數(shù),選擇性返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回None。
還可以定義什么都不做的函數(shù),用pass語(yǔ)句,pass語(yǔ)句什么都不做,有什么用呢?實(shí)際上pass可以作為占位符,比如現(xiàn)在還沒(méi)想好怎么寫函數(shù)的代碼,可以先放一個(gè)pass,讓代碼能運(yùn)行起來(lái)。
需要注意以下幾點(diǎn):
(1)沒(méi)有return語(yǔ)句時(shí),函數(shù)執(zhí)行完畢也會(huì)返回結(jié)果,不過(guò)結(jié)果為None。
(2)return None可以簡(jiǎn)寫為return。
(3)在Python中定義函數(shù)時(shí),需要保持函數(shù)體中同一層級(jí)的代碼縮進(jìn)一致。
在Python中,有的函數(shù)會(huì)產(chǎn)生結(jié)果(如數(shù)學(xué)函數(shù)),我們稱這種函數(shù)為有返回值函數(shù)(fruitful function);有的函數(shù)執(zhí)行一些動(dòng)作后不返回任何值,我們稱這類函數(shù)為無(wú)返回值函數(shù)。
當(dāng)我們調(diào)用有返回值函數(shù)時(shí),可以使用返回的結(jié)果做相關(guān)操作;當(dāng)我們使用無(wú)返回值或返回None的函數(shù)時(shí),只能得到一個(gè)None值。