Python中func(*args, **kwargs)的参数问题

时间:2022-11-12 21:25:35

在python中有教程中的自定义函数使用过这样的参数func(*args, **kwargs),那么这两个看起来有点像C中指针变量的参数到底是做什么的呢?


*args表示任何多个无名参数,它是一个tuple


**kwargs表示关键字参数,它是一个dict


我们来写一段程序演示一下:


print '======================================'
def func(*args,**kwargs):
print 'args=',args
print 'kwargs=',kwargs
print '======================================'

func(1,2,3)
func(a=1,b=2,c=3)
func(1,2,3,a=1,b=2,c=3)
func(1,'b','c',a=1,b='b',c='c')


Python中func(*args, **kwargs)的参数问题