函數(shù)是組織好的,可重復(fù)使用的,用來(lái)實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。Python提供了許多內(nèi)建函數(shù),比如print(),我們也可以自己創(chuàng)建函數(shù),這叫做用戶自定義函數(shù)。
一、函數(shù)定義和調(diào)用
1、函數(shù)定義:
def 函數(shù)名(參數(shù)列表):
函數(shù)體
示例: def printme( str ): #打印傳入的字符串到標(biāo)準(zhǔn)顯示設(shè)備上 print str return
函數(shù)定義的規(guī)則:
函數(shù)代碼塊以 def 關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()。
任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間。圓括號(hào)之間可以用于定義參數(shù)。
函數(shù)的第一行語(yǔ)句可以選擇性地使用文檔字符串—用于存放函數(shù)說(shuō)明。
函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)。
return [表達(dá)式] 結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回 None。
2、函數(shù)調(diào)用
示例:
二、參數(shù)和返回值
參數(shù)支持各種對(duì)象,包含數(shù)字,字符串,列表,元組,也可以是函數(shù)和類
必填參數(shù):def add(x,y):
默認(rèn)參數(shù): 默認(rèn)值參數(shù)必須放在必填參數(shù)后面, 如```def add(x, y=1, z=2):
不定長(zhǎng)參數(shù):args, 如def func(args)--可以接受任意長(zhǎng)度和格式的參數(shù)
關(guān)鍵字參數(shù):kwargs,如 def kwfunc(kwargs): print(kwargs) kwfunc(age='123',name='小黑')
函數(shù)沒(méi)有return默認(rèn)返回None
1、必填參數(shù)傳參方式
示例:
2、必填、默認(rèn)、可變、關(guān)鍵字參數(shù)傳參:
示例1,按序傳值,必填參數(shù)在默認(rèn)參數(shù)之前:
示例2,字典關(guān)鍵字要與函數(shù)參數(shù)名對(duì)應(yīng):
3.參數(shù)及其返回值類型注釋
def f(x:int, y:int) -> int: # x,y為int型,函數(shù)返回為int型,只是注釋,參數(shù)格式非法不會(huì)報(bào)錯(cuò) return x+yprint(f(2,4))
4.函數(shù)作為參數(shù)
def a(): print('this is a')def deco(func): print('call from deco') func()deco(a) # 函數(shù)作為入?yún)?/p>
5.函數(shù)嵌套
def a():
a_var = 1
def b:() # 嵌套函數(shù)
a_var += 1
6.函數(shù)遞歸
示例,求n!:
def fact(n):
return 1 if n == 0 or n ==1 else n*fact(n-1)
print(fact(4))
更多關(guān)于軟件測(cè)試培訓(xùn)的問(wèn)題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項(xiàng)目實(shí)操的話可以點(diǎn)擊咨詢課程顧問(wèn),獲取試聽資格來(lái)試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。