*args和**kwarge区别

*args:
*args 用来将位置参数打包成tuple给函数体调用

def function(*args):
    print(args, type(args))

function(1)

**kwarges:
**kwargs 打包关键字参数成dict给函数体调用

def function(**kwargs):
    print(kwargs)

function(a=1, b=2, c=3)

注意点:参数arg、*args、**kwargs三个参数的位置必须是一定的。必须是(arg,*args,**kwargs)这个顺序,否则程序会报错。

def function(arg,*args,**kwargs):
    print(arg,args,kwargs)

function(6,7,8,9,a=1, b=2, c=3)

你可能感兴趣的:(pythom)