关键字参数
使用关键字参数可以不按函数定义时的参数的顺序来调用函数,Python解释器能够根据函数定义时的参数名来匹配参数。
例如:
def hello(name, age):
print("姓名:", name)
print("年龄:", age)
# 按顺序传递参数
hello(name="小逢", age=19)
# 不按顺序传递参数
hello(age=20, name="小沈")
执行结果如下:
姓名: 小逢
年龄: 19
姓名: 小沈
年龄: 20
但是注意不能传入没有定义的参数:
def person_name(name):
print("姓名:", name)
# age 参数未定义
person_name(name="小逢", age=19) # 错误
执行结果如下:
TypeError: person_name() got an unexpected keyword argument 'age'
这一执行结果告诉我们,代码中有未知的关键“age”。
通过以上例子可以发现,关键字参数的顺序对结果没有影响,无论是否按顺序调用都可以得到正常的结果。