下面是关于“Python3中函数参数的四种简单用法”的详细讲解。
一、函数参数的概念
在Python中,函数是一个可以执行特定任务的代码块,它可以接收输入值,经过处理,并输出结果。而函数参数就是传递给函数的输入值。根据Python3的函数参数类型,可以分为如下四种:
- 位置参数
- 默认参数
- 可变参数
- 关键字参数
接下来,我们将详细介绍这四种类型的函数参数。
二、位置参数
位置参数就是在调用函数时按照顺序传递给函数的参数,对应到函数中的参数列表。例如:
def sum(a, b):
return a + b
res = sum(1, 2)
print(res) # 输出3
在上述代码中,sum函数接收两个位置参数a和b,分别表示相加的两个数。在调用sum函数时,按照顺序传递了1和2两个位置参数,这两个参数会被分别赋值给a和b,最后sum函数返回了它们的和3。
需要注意的是,位置参数是按照顺序进行匹配的,因此在传递参数时必须按照定义顺序。
三、默认参数
默认参数是指在定义函数时就已经预先设定好的参数值,如果在调用函数时没有给这个参数传递值则使用默认值。看下面的例子:
def sum(a, b=0):
return a + b
res1 = sum(1) # 注意,没有传递第二个参数
res2 = sum(1, 2)
print(res1) # 输出1
print(res2) # 输出3
在上述代码中,sum函数中的第二个参数b设置了默认值0。当调用sum函数时,如果只传递一个位置参数a,则b默认取值为0。当传递两个参数a、b时,则使用传递过来的值。因此res1的值为1(1+0),res2的值为3(1+2)。
需要注意的是,所有位置参数都必须在默认参数之前。这是为了避免出现歧义,如果顺序颠倒则Python会报错。
四、可变参数
可变参数是指在定义函数时不确定会有多少个参数,这些参数会被打包成一个元组(tuple)或列表(list)。可以通过在参数名前面添加*来表示这是可变参数。看下面的例子:
def sum(*args):
res = 0
for arg in args:
res += arg
return res
res1 = sum(1, 2, 3)
res2 = sum(1, 2, 3, 4, 5)
print(res1) # 输出6
print(res2) # 输出15
在上述代码中,sum函数中的参数前面添加了*,即表示args可以接收任意个数的参数。在调用sum函数时,可以传递任意个位置参数,这些参数会被打包成一个元组args。然后可以使用for循环遍历args中的所有元素求和,最后返回结果。
需要注意的是,可变参数必须放在所有参数的最后。
五、关键字参数
关键字参数是指在调用函数时使用关键字和值的方式进行传参。需要在定义函数时给关键字参数定义一个默认值。看下面的例子:
def introduce(name, age, sex='男'):
print('我的名字是%s,年龄%d,性别%s' % (name, age, sex))
introduce('小明', 20) # 输出:我的名字是小明,年龄20,性别男
introduce('小红', 18, sex='女') # 输出:我的名字是小红,年龄18,性别女
在上述代码中,introduce函数接收三个参数,其中sex为关键字参数,有默认值"男"。在调用函数时,可以按照函数定义的参数名直接传递相应的值,也可以省略这个关键字参数(此时sex取默认值)。
需要注意的是,在调用关键字参数函数时,所有位置参数都必须出现在关键字参数之前。
以上就是Python3中使用函数参数的四种简单用法的详细讲解。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python3中函数参数的四种简单用法 - Python技术站