Python入门之Python函数
2020-06-28 14:44:40 来源:易采站长站 作者:易采站长站整理
print(f'我的名字是:{name},性别:{gender},今年 {age} 岁')
my_Info('Jock', '男', 25) # 通过位置参数调用 my_Info 函数
my_Info(name='Jock', gender='男', age=25) # 通过关键字参数调用 my_Info 函数
输出结果:
我的名字是:Jock,性别:男,今年 25 岁
我的名字是:Jock,性别:男,今年 25 岁
这里我们分别通过
位置参数 和
关键字参数 的方式调用
my_Info() 函数,两种方法都是可以的。相信大家到这里多少都有点迷惑,位置参数和关键字参数具体怎么区分,什么时候用位置参数,什么时候用关键字参数呢?
实际上区分位置参数和关键字参数取决于
调用函数时,它们传入函数的方式,而不取决于定义函数时的形式。如果是按照位置传入函数的参数,即
value1, value2, value2的形式传入函数,比如
my_Info('Jock', '男', 25) 就是位置参数,如果是按关键字参数传入函数,即
kwarg=value 的形式传入函数的参数就是关键字参数,比如
my_Info(name='Jock', gender='男', age=25),就是关键字参数传参。到这里相信大家已经非常清楚怎么区别位置参数和关键字参数了。函数
my_Info(name, gender, age) 中
name, gender, age 既可以是位置参数,也可以是关键字参数,这种情况属于我们说的 Python 3 种参数中的
位置参数或关键字参数(positional-or-keyword) ,即我们定义的函数,可以通过位置参数的方式调用,也可以通过关键字参数的方式调用。不过需要注意的是,
不管是在定义还是在调用时,位置参数都必须在关键字参数前面。以下是定义和调用函数的常见错误以及正确的做法:
# 定义函数时错误案例一:定义函数时有位置参数在默认参数后
def my_Info(name, gender='男', age): # Python 解释器报错:SyntaxError: non-default argument follows default argument
print(f'我的名字是:{name},性别:{gender},今年 {age} 岁')# 正确定义函数
def my_Info(name, gender, age):
print(f'我的名字是:{name},性别:{gender},今年 {age} 岁')
# 错误调用一:调用时有位置参数在默认参数后
my_Info('Jock', gender='男', 25) # SyntaxError: positional argument follows keyword argument
# 正确调用













闽公网安备 35020302000061号