自定义函数时,如果参数名前面加一个星号“*”,则表示该参数时一个可变数量长的参数。
在调用该参数时,如果依次将所有的其他变量都赋值之后,剩下的参数会收集在一个元组中,元组的名称就是前面带星号的参数名
如果函数声明中,参数列表中如果包括三种类型的参数(位置参数,关键字参数和可变长参数),一般来说带星号的参数放在最后面。但如果带星号“*”的参数放在前面,仍然可以工作,但是调用函数时,后面的参数必须以关键字方式提供
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