python3函数的参数传递
传递方式
- 位置传参
(序列传参) - 关键字传参
(字典关键字传参)
位置传参:
实际参数(实参)的对应关系与形式参数(形参)的对应关系是接位置来依次对应的
* 说明:
实际参数的个数必须与形式参数的个数相同
* 序列传参:
序列传参是指在函数调用过程中,用*将序列拆解后按位置进行传递的传参方式
* 说明:
序列传参是,序列拆解的位置将与形参一一对应
序列的位置信息对应相应的的参数位置
示意:
def mymin(a,b,c,d):
pass
mymin(1,2,*(3,4))
# 1,2按位置对应关系传给a,b
# *将可迭代对象(3,4)拆解成3,4按位置传给c,d
关键字传参:
关键字传参是指传参时,按着形参的名称给参数赋值
实参和形参按照名称进行匹配, 不必考虑顺序
* 字典关键字传参:
字典关键字传参是指实参为字典,将字典用**拆解后尽心关键字传参的方式
- 说明:
字典的键名和形参一致
字典的键名必须为字符串(且为标识符的命名方式)
字典的键名要在形参中存在
示意:
def mymin(a,b,c,d):
pass
mymin(c=1,b=2,*{'a':3, 'd':4})
# 形参c = 1和 b=2 按照形参名字分别传递给c 和b 实参1,2
# ** 将字典拆解成关键字形参 a = 3, d = 4,然后根据形参名分别传递给a,d 实参 3,4
- 缺省参数: 给定参数默认值 内部给定默认实参,函数定义时一次性给定