对python中的*args与**kwgs的含义与作用详解
在定义函数的时候参数通常会使用
*args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用。
*args是非关键字参数,用于元组,**kw是关键字参数
例如下面的代码
deffoo(*args,**kwargs): print'argsis',args print'kwargsis',kwargs foo(1,2) foo(k=1,w=2,a=3,r=4,g=5,s=6) foo(1,2,a=1,b=2,c=2) foo('a',1,None,a=1,b='2',c=3)
在函数foo中定义了两个参数
在调用的时候,传递参数,最后的结果如下
argsis(1,2) kwargsis{} argsis() kwargsis{'a':3,'g':5,'k':1,'s':6,'r':4,'w':2} argsis(1,2) kwargsis{'a':1,'c':2,'b':2} argsis('a',1,None) kwargsis{'a':1,'c':3,'b':'2'}
在其中args为一个元组而kwags是一个字典类型。
这两个作为python的可变参数,也就是说args表示任何多个无名参数,然而kwags表示一个一个有着对应关系的关键字参数。
在使用的时候需要注意,*args要在**kwags之前,不然会发生语法错误。
以上这篇对python中的*args与**kwgs的含义与作用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。