参数
形参和实参
在定义函数的时候,会为函数设定形参,在调用函数的时候,会为函数传入实参。
def func(name,age,sex): #括号里是定义函数时设定的形参
print("my name is {0},age:{1},sex:{2}".format(name,age,sex))
func("nd",18,"男") #括号里是调用函数时,传入的实参
参数类型
参数类型有:位置参数,关键字参数,默认参数,收集参数
位置参数
位置参数:按照函数在定义时的参数位置,传入实参。
在传入参数时,需要保证位置一一对应,且传入参数的数量与形参一致。
def func1(name,age,sex):
print("my name is {0},age:{1},sex:{2}".format(name,age,sex))
func1("nd",18,"男")
# 返回
my name is nd,age:18,sex:男
关键字参数
关键字参数:通过“ 形参 = 实参 ”的方式来传入参数。
这种方式相比位置参数,更加清晰,直观,也不再需要关注参数的位置问题。当关键字参数与位置参数混合使用的时候,需要使位置参数在关键字参数前面,且位置参数需要连续。但关键字参数之间,无先后顺序。
- 使用关键字参数
def func2(name,age,sex):
print("my name is {0},age:{1},sex:{2}".format(name,age,sex))
func2(name="nd",sex="男",age=18)
# 返回
my name is nd,age:18,sex:男
- 关键字参数与位置参数混用
name参数使用的是位置参数,sex与age参数使用关键字参数后,位置发生了交换
def func3(name,age,sex):
print("my name is {0},age:{1},sex:{2}".format(name,age,sex)