Python中 *args 和**kwargs自定义
*1. args
*args 表示任何多个无名参数,它是一个tuple
def food(x, *args): #x固定一个参数,后面多的参数组成一个tuple传入*args
print(x)
print(args) #可以看出输出的值也为一个tuple元组
print(type(args))
food(1, 2, 3, 4)
#(输出)1
#(输出)(2, 3, 4)
#(输出)<class 'tuple'>
**2.kwargs
**kwargs 表示关键字参数,它是一个dict
def kw_dict(**kwargs):
return kwargs
print(kw_dict(a=1, b=2, c=3)) #传出多个参数 ,定义多组key 和value 对应字典。
3.*args 和kwargs**
接受任何参数
def kw_dict(*args,**kwargs):
return args,kwargs
print(kw_dict(1,3,4,5,a=1, b=2, c=3))
#(输出)((1, 3, 4, 5), {'a': 1, 'b': 2, 'c': 3})