函数的参数
一、位置参数
按位置传递的参数。实参按默认位置顺序传递,需要个数与形参匹配。
def test(a,b,c):
Print(a,b,c)
test(1,2,3)
二、默认值参数
形参给默认值。如果形参有默认值,实参也传递了,按照实参传递的来。默认值形参位置放在最后
def test(a,b,c=15):
Print(a,b,c)
test(1,2,3)
test(1,2)
三、命名参数
按照形参的名称传递参数。
def test(a,b,c):
Print(a,b,c)
test(b=2,a=1,c=3)
四、可变参数
指可变数量的参数/动态参数/不定长参数*args,*后边用别的也可以
1. *args(一个星号),将多个参数收集到一个“元组”对象中。
def test(a,b,*c):
Print(a,b,c)
test(1,2,3,4) ——————>1,2,(3,4)
脱外套操作
a = "abcd"
b = [1,2,3]
c = {"a":54,"b":"c"}
print(*a)
print(*b)
print(*c)
a b c d
1 2 3
a b
2. 关键字参数:
**kwargs(两个星号),将多个参数收集到一个“字典”对象中。kw = keyword
def test(a,b,**c):
print(a,b,c)
test(1,2,wangzhe=”rongyao") ——————>1,2,{“wangzhe”:”rongyao”}
五、强制命名参数
def test01(*a,b,c):
print(a, b, c)
test01(1,b=2,c=3)
test01(1,2,3) # 报错,因为*a收录元组,1,2,3都被收录,形参b,c就接不到实参,会报错