1. 程式人生 > >python可變數量引數傳遞

python可變數量引數傳遞

自定義函式時,如果引數名前面加一個星號“*”,則表示該引數時一個可變數量長的引數。

在呼叫該引數時,如果依次將所有的其他變數都賦值之後,剩下的引數會收集在一個元組中,元組的名稱就是前面帶星號的引數名

如果函式宣告中,引數列表中如果包括三種類型的引數(位置引數,關鍵字引數和可變長引數),一般來說帶星號的引數放在最後面。但如果帶星號“*”的引數放在前面,仍然可以工作,但是呼叫函式時,後面的引數必須以關鍵字方式提供

eg

def change_para_num(*tpe,a,b=0):

        print('tpl':,tpl)

        print('a':a)

        print('b':b)

change_para_num(1,2,3,a=5)

>>>

tpe:(1,2,3)

a:5

b:0