1.默认(一一对应)
# 1.一般情况下,形参和实参一一对应,例如
def Hanshu(a,b) :
c = a * b
return c
Hanshu(3,4) #这里就3和4分别对应a和b
# 2.形参位置已经赋值
def Hanshu(a,b = 6) :
c = a * b
return c
Hanshu(1) #这个1会赋给a,b用默认值6
Hanshu(7,8) #7,8分别赋给a,b
2.个数可变的位置参数
在定义函数时,暂时不知道函数的形式参数个数,可以用 *xx 代替
实参可以写很多个
结果为元组形式
def Hanshu(*a) :
print(a)
Hanshu(1)
Hanshu(1,2)
Hanshu(1,2,3)
结果
(1,)
(1,2)
(1,2,3)
注意:
没有(*a,*b)的写法,位置参数只能写一个
3.个数可变的关键字形参
同样在定义函数时,形式参数的个数还不确定,即对应的实参个数也不确定,可以 **xx代替
结果为字典
def Hanshu(**a) :
print(a)
print(a = 6 ,b = "hello")
结果
{'a':6,'b':'hello'}
注意:
关键字参数也只能有一个,没有(**a,**b)的写法
4.位置形参和关键字形参一起
位置形参 *xx 在前,关键字形参 **xx在后
结果: