*args和**kwargs区别

*args可以放任意类型的,数字,字典,数据等,类型为元组

def args(somethi,*args):
    print("hello {},{},{}".format(somethi,args,type(args)))

name="faker"
age=22
args(1,name,age)
#args(1,nam=2,age=3)这种赋值是不可以的
hello 1,('faker', 22),<class 'tuple'>

**kwargs是字典类型的,因此传的参数需要时键值对的形式,key-value

def kwargs(somethi,**kwargs):
    print("hello {},{},{}".format(somethi,kwargs,type(kwargs)))

kwargs(1,name="faker",age=22)
hello 1,{'name': 'faker', 'age': 22},<class 'dict'>

*args和**kwargs是在函数传参时会用到,也是必传参数

posted @ 2020-08-19 22:06  Music-哑梦  阅读(81)  评论(0)    收藏  举报