,定义函数时name,age为位置参数,sex为默认参数。...注意:
调用函数时,实参可以是按位置或关键字的混合使用,但必须保证关键字参数在位置参数后面,且不可以对一个形参重复赋值
默认参数的值通常应设为不可变类型
2、可变长度参数*args和**kwargs
参数的长度可变指的是调用函数时...2.1 可变长度的位置参数
如果在最后一个形参名前加*号,那么在调用函数时,溢出的位置实参都会被接受,以元组的形式保存下来赋值给该形参。...func(x,y,z=1,*args):
print(x,y,z,args)
func(1,2,3,4,5,6,7)
>>1 2 3 (4,5,6,7)
#这里起作用的就是*号,相当于溢出的位置参数赋值给了它后面的变量...,z=3)
>>1 2 3
分析:
此处在给wrapper传参时,其遵循的事函数func的参数规则,第一步,位置参数1被接受,以元组形式保存下来赋值给args,即args=(1,),关键字参数y=2,