y的默认值
# 此时z必须按key=value的方式传值
f(2,z=5)
# y、z都采用默认值
f(2)
变长参数:*
对于任意长度的参数,可以在def声明的函数中使用*将各位置参数收集到一个元组中...变长参数:**
除了可以使用*将位置参数收集到元组中,还可以使用**将key=value格式的参数收集到字典中。...def f(x,y,**args)
def f(x,*args1,**args2)
函数调用时的*和**
除了在def定义函数时,参数中可以使用*或**收集参数,在函数调用的时候也可以使用*或**分别解包元组...例如,解包元组:
def f(a,b,c,d):
print(a)
print(b)
print(c)
print(d)
T=(1,2,3,4)
f(*T)
*除了可以解包元组...甚至是字典也能解包,只不过*解包的字典得到的是key组成的参数列表,和value无关:
D=dict(a=11,b=22,c=33,d=44)
f(*D)
# 输出:
a
b
c
d
而**解包的字典则是