python:*args和**kwargs的用法
1、*args用来将参数打包成tuple给函数体调用
代码:
# *args用来将参数打包成tuple给函数体调用
def func(*args):
print(args,type(args))
func()
# *args用来将参数打包成tuple给函数体调用
def func02(x,y,*args):
print(x,y,args,type(args))
func02(1,2,3,4,5,6)
结果:
() <class 'tuple'>
1 2 (3, 4, 5, 6) <class 'tuple'>
2、**kwargs打包关键字参数,变成dict给函数体用
代码:
# **kwargs打包关键字参数成dict给函数体调用
def func03(**kwargs):
print(kwargs,type(kwargs))
func03(a=3)
def func04(arg,*args,**kwargs):
print(arg,args,kwargs)
func04(1,2,3,4,5,a=6,b=7,c=8)
结果:
{'a': 3} <class 'dict'>
1 (2, 3, 4, 5) {'a': 6, 'b': 7, 'c': 8}
业精于勤而荒于嬉,勤劳一日,可得一日安眠;勤劳一生,可得幸福一生。因为,我们努力了;因为,天道酬勤。