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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

显示为:

技术分享

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


以上是关于python的*args和**kwargs基础用法的主要内容,如果未能解决你的问题,请参考以下文章

python中*args 和**kwargs的用法

Python中*args 和**kwargs的用法

Python中*args 和**kwargs的用法

python3进阶之*args与**kwargs用法

python中*args 和**kwargs的用法

Python函数中*args和**kwargs来传递变长参数的用法