Python函数进阶教程:函数参数
发布时间:2023-07-01 16:12:51
Python函数参数是函数定义中的变量。在函数调用过程中,参数用于传递值或对象。
Python函数参数有四种类型:位置参数、默认参数、可变参数和关键字参数。
1.位置参数:函数调用时,按照参数的位置依次传递参数的值。位置参数的顺序必须和函数定义中的参数顺序一致。
例如,定义一个计算两个数之和的函数:
def add(x, y):
result = x + y
return result
调用该函数时,必须按照参数的位置传递参数的值:
result = add(2, 3) print(result) # 输出:5
2.默认参数:在函数定义时,给参数赋予一个默认值。调用函数时,如果不传递该参数的值,将使用默认值。
例如,定义一个计算圆的面积的函数:
import math
def area_of_circle(radius, pi=math.pi):
area = pi * radius ** 2
return area
调用该函数时,可以只传递一个参数,或者同时传递两个参数:
result1 = area_of_circle(5) result2 = area_of_circle(5, 3.14) print(result1) # 输出:78.53981633974483 print(result2) # 输出:78.5
3.可变参数:函数调用时,传递不定数量的参数。可变参数有两种方式:*args和**kwargs。
- *args:用于传递不定数量的位置参数。
例如,定义一个计算多个数之和的函数:
def add(*args):
result = 0
for num in args:
result += num
return result
调用该函数时,可以传递任意数量的参数:
result1 = add(2, 3) result2 = add(1, 2, 3, 4, 5) print(result1) # 输出:5 print(result2) # 输出:15
- **kwargs:用于传递不定数量的关键字参数。
例如,定义一个打印学生信息的函数:
def print_student_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
调用该函数时,可以传递任意数量的关键字参数:
print_student_info(name="Alice", age=20) print_student_info(name="Bob", age=21, grade="A")
输出:
name: Alice age: 20 name: Bob age: 21 grade: A
4.参数的顺序:在函数定义时,参数的顺序应该按照位置参数、默认参数、可变参数和关键字参数的顺序进行。
例如:
def func(arg1, arg2, *args, kwarg1="default", **kwargs):
pass
在调用该函数时,可以只传递位置参数,或者根据需求选择传递其它参数。
函数参数是Python函数的重要组成部分,熟练掌握函数参数的使用可以提高编程效率和代码重用性。
