1.*args
*args将传递给函数的参数打包成元组给函数使用
eg:
def fun1(*args):
print('type of args:',type(args))
print('args:',args)
print('args[1]',args[1])
fun1(1,2,3)
#输出:
type of args: <class 'tuple'>
args: (1, 2, 3)
args[1]: 2
2.**kwargs
**kwargs将传递给函数的参数打包成字典给元素使用
eg:
def fun2(**kwargs):
print('type of kwargs:',type(kwargs))
print('kwargs:',kwargs)
print('kwargs['\x1\']:',kwargs['x1'])
dict={'x1':1,"x2":2,"x3":3}
fun2(x1=dict['x1'],x2=dict['x2'])
print()
fun2(**dict)
#输出:
type of kwargs: <class 'dict'>
kwargs: {'x1': 1, 'x2': 2}
kwargs['x1']: 1
type of kwargs: <class 'dict'>
kwargs: {'x1': 1, 'x2': 2, 'x3': 3}
kwargs['x1']: 1