默认参数的格式为key = value
举个例子:
def add(a , b=10):
result = a+b
print(result)
其中b=10,就是以key = value的形式呈现的。
默认情况下依次给参数赋值,比如add(8,9)那么赋值给函数的值为a=8,b=9。
如果函数格式如下:
def add(a , b=10 ,c):
result = a+b+c
print(result)
给参数赋值的话,可以指定赋值的参数。如a=8,b=93,c=90。如果不指定的话也是依次赋值。但是值少位数则会报错。赋值的形式则是key = value。
关键字参数:
def add(**kwargs):
print(a,b,c)
调用时不能直接用(1,2,3)这种形式,而应该用a=1,b=2,c=3这种形式。
且存放字典时,不能直接用,需要用*模式,将字典拆成关键字参数形式,一个拆包的过程。
args 是 arguments 的缩写,表示位置参数;kwargs 是 keyword arguments 的缩写,表示关键字参数。这其实就是 Python 中可变参数的两种形式,并且 *args 必须放在 **kwargs 的前面,因为位置参数在关键字参数的前面。
*args的用法
*args就是就是传递一个可变参数列表给函数实参,这个参数列表的数目未知,甚至长度可以为0。下面这段