python参数分类:位置参数,默认参数,可变参数,关键字参数,命名关键字参数
可变参数:
该参数可不传参
在参数前添加一个*号,可变参数在函数内被视为一个tuple 。
可变关键字参数:
该参数可不传参
在参数前以**开头,以dict作为数据类型将参数传递给函数,key:value,在函数内部将传入的参数作为dict来使用。
注意:两个星号作用于字典前,将字典拆成key=value的形式,但是这种形式不可单独使用,可用于传参。
一道用例题,能让快速理解,args与kwargs作为可变参数与关键词参数的使用:
def test(*args,**kwargs):
print(args,kwargs)
def test_func(*args,**kwargs):
print(args,kwargs)
test(args,kwargs)
test_func(1,2,c=3)
打印结果:
(1, 2) {'c': 3}
((1, 2), {'c': 3}) {}
分析,test_func里调用test时,test_func的args,kwargs一起作为可变参数(args,kwargs)传递给test的args,而关键词参数是空的。