美文网首页
python中的*args和**kwargs

python中的*args和**kwargs

作者: woshishui1243 | 来源:发表于2019-02-24 12:31 被阅读0次
    def foo(*args,**kwagrs):
       print('args=',args)
       print('kwargs=',kwagrs)
       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,None,a=1,b='2',c=3)#*kwargs用来接收关键字传参其余类型都由*args接收
    

    args和kwargs是python中的可变参数,args表示任何多个无名参数,他是一个tuple
    kwargs表示关键字参数,他是一个dict.并且同时使用args和kwargs时,必须args参数列要在**kwargs前,像f00(a=1,b=2,c=3,a,1,NOne)这样调用的话,会提示语法错误

    创建字典

    def kw_dict(**kwargs):
       return kwargs
    
    print(kw_dict(a=1,b=2,c=3)=={'a':1,'b':2,'c':3})
    

    这样的方式也可以

    kw_dict(a=1,b=2,c=3)
    print(dict)
    

    相关文章

      网友评论

          本文标题:python中的*args和**kwargs

          本文链接:https://www.haomeiwen.com/subject/toivyqtx.html