举例说明:首先自定义一个函数test,传两个参数。第一个*args,第二个**wkargs
第一次调用(1,3,5),分别查看打印输入的args和wkargs
第二次调用(xx='1', yy='3', zz='True'),分别查看打印输入的args和wkargs
第三次调用(1, 6, 3.1415926, 'True', None, x='1', y='3', z='True'),分别查看打印输入的args和wkargs
def test(*args, **kwargs):
print('*args=', args)
print('**kwargs=', kwargs)
print('****************')
test(1, 3, 5)
print('****************')
test(xx='1', yy='3', zz='True')
print('****************')
test(1, 6, 3.1415926, 'True', None, x='1', y='3', z='True')
结果:
解析:
可以看到,这两个是python中的可变参数。*args表示任何多个无名参数,它是一个tuple元组;**kwargs表示关键字参数,它是一个dict字典。并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前