python *args,**kwargs参数

实际上,关键的是*和**

我们以三个例子来解释:

普通的使用参数:

def test1(arg):
    print(arg)
test1("a")
输出:
a

*是将剩下的参数用元祖表示

def test1(arg1,arg2,*args):
    print(arg1)
    print(arg2)
    print(args)
test1(1,2,3,"a","b")
输出:
1
2
(3, 'a', 'b')

**是将参数转换成字典进行表示

def test2(**kwargs):
    print(kwargs)
test2(a=1,b=2)
输出:
{'a': 1, 'b': 2}

最后,我们结合三种方式:(注意必须按照这种顺序)

def test4(arg1,arg2,*args,**kwargs):
    print(arg1)
    print(arg2)
    print(args)
    print(kwargs)
test4(1,2,3,4,5,a=1,b=2)
输出:
1
2
(3, 4, 5)
{'a': 1, 'b': 2}

猜你喜欢

转载自www.cnblogs.com/xiximayou/p/11688913.html