python中的函数参数传递方式
发布时间:2023-06-12 12:46:13
在Python中,函数参数的传递方式可以分为四种:位置参数、默认参数、可变长参数和关键字参数。这些参数的使用方式不同,可以满足不同的需求。
一、位置参数
位置参数是指函数中最基本的参数传递方式,传递的参数是按照定义时的顺序一一对应的。例如:
def func(a, b, c):
print(a, b, c)
func(1, 2, 3) # 输出结果为 1 2 3
在这个例子中,函数定义时有三个参数,它们分别是 a、b 和 c,调用函数时传入的参数和定义时的顺序是一一对应的,所以输出结果为 1 2 3。
二、默认参数
默认参数是指在函数定义时给某些参数指定默认值,这些参数在调用函数时可以不传递对应的参数值,直接使用默认值。例如:
def func(a, b=2, c=3):
print(a, b, c)
func(1) # 输出结果为 1 2 3
func(1, 4) # 输出结果为 1 4 3
在这个例子中,函数定义时有三个参数,其中 b 和 c 分别指定了默认值为 2 和 3。在调用函数时只传入一个参数时,b 和 c 分别使用了默认值,所以输出结果为 1 2 3。在调用函数时传入两个参数时,第二个参数对应的是 b,所以 c 使用了默认值,所以输出结果为 1 4 3。
三、可变长参数
可变长参数是指函数中的参数个数不固定,在定义函数时使用星号 * 表示,可以传递任意个参数。例如:
def func(*args):
print(args)
func(1, 2, 3) # 输出结果为 (1, 2, 3)
func('a', 'b', 'c', 'd') # 输出结果为 ('a', 'b', 'c', 'd')
在这个例子中,函数定义时使用了一个星号 *,表示该函数可以接受任意多个参数。调用函数时传入的参数个数不限,函数接收到的参数是一个元组,可以使用元组的方式进行处理。
四、关键字参数
关键字参数是指函数传递参数时使用参数名进行指定,可以忽略参数顺序,直接指定参数名即可。例如:
def func(a, b, c):
print(a, b, c)
func(c=3, b=2, a=1) # 输出结果为 1 2 3
在这个例子中,调用函数时使用了关键字参数的方式,指定了每个参数的名称和对应的值,这样可以按照自己需要的顺序传递参数。输出结果与位置参数的方式一样,都是 1 2 3。
以上就是Python中的函数参数传递方式,不同的方式可以满足不同的需求,可以根据实际情况选择合适的方式。
