Python可变参数

当函数的参数不确定时,可以使用argvs 和kwargs,args接收非键值,kwargvs接收键值对参数,args和kwargs必须在参数列表最后,并且kwargs在args后面

  • *args args将参数封装在元组中
    def test_args(first,*args):
        print(first)
        print(args)
        
    input
        test_args(1, 2, 3, 4)
    result
        1
        (2, 3, 4)
        
    
    input:
        li = [1,2,3,4]
        test_args(0, *li)
    result:
        0
        (1, 2, 3, 4)
    
  • **kwargs kmargs将参数封装在字典中
    def test_kwargs(first, **kwargs):
        print(first)
        print(kwargs)
        
    input:
        test_kwargs(1, a=1, b="str", c=[1, 2, 3])
    result:
        1
        {'a': 1, 'b': 'str', 'c': [1, 2, 3]}
        
    input:
        dic = {'a': 1, 'b': [1, 2, 3]}
        test_kwargs(0, **dic)
    result:
        0
        {'a': 1, 'b': [1, 2, 3]}

猜你喜欢

转载自blog.csdn.net/believe2017slwx/article/details/80250200
今日推荐