当函数的传参不确定数量时,可以使用 args和kwargs。
一般*args 无key值,**kwargs有key值。
*args 是用来将参数打包成元组给函数调用的,args即是传给函数的参数所构成的元组;
**kwargs是用来将关键字参数打包成字典给函数调用的,kwargs即是传给函数所构成的字典。
def foo(*args, **kargs):
print(args)
print(args[-1])
print(args[0] + 1)
print(kargs)
print(kargs['name'])
foo(1, 2, 3, 4, test='test', name="Bruce")
输出结果如下:
(1, 2, 3, 4)
4
2
{'test': 'test', 'name': 'Bruce'}
Bruce