python的*args和**kwargs基础用法

时间:2023-03-10 07:06:55
python的*args和**kwargs基础用法

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

**kwargs:传入的字典,就如:a=1,传入键值,默认就传入到**kwargs中,如下面代码:

class FOO:
def __init__(self):
pass
def __call__(self,*args,**kwargs):
print "__call__"
for value in args:#直接显示内容
print "anther,args:",value
print u"以下是做累加计数"
print sum(args)+sum(kwargs.values()) #做累加 obj=FOO()
obj(1,2,3,a=1)#args作为容纳的变量的list

显示为:

python的*args和**kwargs基础用法

可以看到在1,2,3中是默认传入到了args中,a=1,就传入到**kwargs中,而7则是1+2+3+1的结果,