77:参数的类型_位置参数_默认值参数_命名参数

###参数的几种类型

###位置参数

函数调用时,实参默认按位置顺序传递,需要个数和形参匹配。按位置传递的参数,称为:
“位置参数”。

【操作】测试位置参数

def f1(a, b, c):
    print(a, b, c)


f1(2, 3, 4)
f1(2, 3)  # 报错,位置参数不匹配

输出结果:

D:\work\python\two\venv\Scripts\python.exe D:\work\python\two\mypy11.py 
Traceback (most recent call last):
  File "D:\work\python\two\mypy11.py", line 6, in <module>
    f1(2, 3)  # 报错,位置参数不匹配
TypeError: f1() missing 1 required positional argument: 'c'
2 3 4

###默认值参数

我们可以为某些参数设置默认值,这样这些参数在传递时就是可选的。称为“默认值参数”。默认值参数放到位置参数后面。

【操作】测试默认值参数

def f1(a, b, c=10, d=20):  # 默认值参数必须位于普通位置参数后面
    print(a, b, c, d)


f1(8, 9)
f1(8, 9, 19)
f1(8, 9, 19, 29)

输出结果:

D:\work\python\two\venv\Scripts\python.exe D:\work\python\two\mypy12.py 
8 9 10 20
8 9 19 20
8 9 19 29

进程已结束,退出代码0

###命名参数

我们也可以按照形参的名称传递参数,称为“命名参数”,也称“关键字参数”。

【操作】测试命名参数

def f1(a, b, c):
    print(a, b, c)


f1(8, 9, 19)  # 位置参数
f1(c=10, a=20, b=30)  # 命名参数

输出参数:

D:\work\python\two\venv\Scripts\python.exe D:\work\python\two\mypy13.py 
8 9 19
20 30 10
posted @ 2022-11-19 13:58  竹蜻蜓vYv  阅读(92)  评论(0编辑  收藏  举报