【李刚-21天通关Python-17】之 关键字参数与参数默认值
一、关键字参数
- Python函数的参数名不是没有意义的,Python允许调用函数时通过名字来传入参数值
- 调用函数时,支持两种方式为参数指定值:
- 位置参数:必须按顺序为每个参数指定参数值
- 关键字参数(命名参数):按参数名为参数指定参数值
def info (name, age, height):
print("name: ", name)
print("age: ", age)
print("height: ", height)
# 位置参数
info('python', 18, 180)
# 关键字参数
# 优势:不需要按顺序,可读性更高
info(age=18, name='python',height=180)
# 混合使用
# 注意:关键字参数必须在位置参数之后
info('python', height=180, age=18)
二、参数的默认值
- 程序需要在定义函数时为一个或多个形参指定默认值——这样调用函数时就可以省略为该形参传入参数值,而是直接使用该形参的默认值
- 为形参指定默认值的语法格式为:形参名 = 默认值
def info (age, name='python'):
print("name的参数为:", name)
print("age的参数为:", age)
info(18)
# name的参数为:python
# age的参数为:18
info(20, 'java')
# name的参数为:java
# age的参数为:20
def say_hi(name='孙悟空', message='您好,欢迎学习Python'):
print("name: ", name)
print("message: ", message)
say_hi()
# name: 孙悟空
# message: 您好,欢迎学习Python
say_hi('白骨精')
# name: 白骨精
# message: 您好,欢迎学习Python
say_hi(message='欢迎加入大家庭')
# name: 孙悟空
# message: 欢迎加入大家庭