python3xiaobaike_2020/chapter5/5-4 python3小白课:关键字参数.md
2025-04-20 23:22:14 +08:00

1.7 KiB
Raw Permalink Blame History

python3小白课关键字参数

定义函数的时候我们可以设定形参,而在调用函数的时候需要传入对应的参数,我们最简单的方式是直接按定义时的顺序传入,这时候传入的参数就叫做位置参数。它会按照传入的位置赋值给对应的形参。

# coding:utf-8
def info(name, age):
    print("姓名:%s,年龄:%d" % (name, age))
info("小白", 18)

但我们有的时候记不住这个顺序,或者想只赋值其中的几个参数的时候,就不一定要按照定义的顺序来了,我们可以使用关键字参数来定义。关键字参数就是在调用的时候使用关键字=值的定义形式,这样解释器就能够自动的关联到对应的形参了。

看个例子:

# coding:utf-8
def info(name, age):
    print("姓名:%s,年龄:%d" % (name, age))
info(age=18, name="小白")

运行后可以看到,也是能够正确的匹配的。

如果我们在调用时,有时候用位置参数,有时候用关键字参数调用,可以吗?答案是可以的。但我们需要注意一个原则,就是位置参数必须写在关键字参数之前,否则解释器会搞不清你要将传入的参数赋值给哪个形参,导致报错。

# coding:utf-8
def info(name, age, sex):
    print("姓名:%s,年龄:%d,性别:%s" % (name, age, sex))
# 这样写会报错:
# info(age=18, sex="男", "小白")
# 正确的写法
info("小白", sex="男", age=18)

单词释义

单词 释义
info information信息的简写形式
name 姓名
age 年龄
sex 性别