arr在python中是什么意思,arg在python中是什么意思
*args是用于元组的非关键字参数,**kw是用于字典的关键字参数。
def foo(*args,**kwargs): print args=,args print kwargs=,kwargs print -- if _ _ name _ _= _ _ main _ _ :
foo(1,2,3,4)
foo(a=1,b=2,c=3)
foo(1,2,3,4,a=1,b=2,c=3)
foo(a ,1,无,a=1,b=2 ,c=3)
输出结果如下:
args=(1,2,3,4)
kwargs={}
-
args=()
kwargs={a: 1, c: 3, b: 2}
-
args=(1,2,3,4)
kwargs={a: 1, c: 3, b: 2}
-
args=(a ,1,无)
kwargs={a: 1, c: 3, b: 2}
-
如你所见,这两个是python中的可变参数。*args表示任意数量的无名参数,是一个元组;**kwargs表示关键字参数,这是一个字典。并且当*args和**kwargs同时使用时,*args参数列必须在**kwargs之前。如果调用foo(a=1,b=2 ,c=3,a ,1,None,)会提示语法错误“语法错误:关键字arg后非关键字arg”。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。