摘要:前言在Python中定義函數(shù),可以用必選參數(shù)、默認(rèn)參數(shù)、可變參數(shù)和關(guān)鍵字參數(shù),這4種參數(shù)都可以一起使用,或者只用其中某些,但是請(qǐng)注意,參數(shù)定義的順序必須是:必選參數(shù)、默認(rèn)參數(shù)、可變參數(shù)和關(guān)鍵字參數(shù)??勺儏?shù)( * )可變參數(shù),顧名思義,它的參數(shù)是可變的,比如列表、字典等。如果我們需要函數(shù)處理可變數(shù)量參數(shù)的時(shí)候,就可以使用可變參數(shù)。我們?cè)诓榭春芏郟ython源碼時(shí),經(jīng)常會(huì)看到 某函數(shù)(*參數(shù)1, *
前言
在Python中定義函數(shù),可以用必選參數(shù)、默認(rèn)參數(shù)、可變參數(shù)和關(guān)鍵字參數(shù),這4種參數(shù)都可以一起使用,或者只用其中某些,但是請(qǐng)注意,參數(shù)定義的順序必須是:必選參數(shù)、默認(rèn)參數(shù)、可變參數(shù)和關(guān)鍵字參數(shù)。
可變參數(shù)( * )
可變參數(shù),顧名思義,它的參數(shù)是可變的,比如列表、字典等。如果我們需要函數(shù)處理可變數(shù)量參數(shù)的時(shí)候,就可以使用可變參數(shù)。
我們?cè)诓榭春芏郟ython源碼時(shí),經(jīng)常會(huì)看到 某函數(shù)(*參數(shù)1, **參數(shù)2)這樣的函數(shù)定義,這個(gè)*參數(shù)和**參數(shù)就是可變參數(shù),一時(shí)會(huì)讓人有點(diǎn)費(fèi)解。其實(shí)只要把函數(shù)可變參數(shù)的定義搞清楚了,就不難理解了。
當(dāng)我們不知道需要用幾個(gè)參數(shù)來定義函數(shù)的時(shí)候,可變參數(shù)就可以大展手腳了。
在Python里,帶 * 的參數(shù)就是用來接受可變數(shù)量參數(shù)的。
如果一個(gè)函數(shù)定義如下:
def functionTest(*args): .... .... ....
調(diào)用時(shí)我們可以的這樣調(diào)用:
functionTest(1) 或者 functionTest(1,2) 或者 functionTest(1,2,3)
后面可以傳入多個(gè)參數(shù)。
看段實(shí)例代碼,觀察下*是怎么具體應(yīng)用的吧:
def get_sum(*numbers): sum = 0 for n in numbers: sum += n return sum #在這里寫下你的代碼來調(diào)用get_sum來求5個(gè)數(shù)字的和,并輸出這個(gè)結(jié)果 print (get_sum(1,2,3,4,5))
更多關(guān)于Python中函數(shù)的可變參數(shù)請(qǐng)關(guān)注PHP中文網(wǎng)(www.miracleart.cn)其他文章!