欢迎访问宙启技术站
智能推送

实例解析Python函数如何传递参数

发布时间:2023-06-20 20:57:18

Python函数是带有自己命名的代码块,通过函数的定义可以实现重用。在Python中函数的传参分两种,一种是位置参数传递,另一种是关键字参数传递。

位置参数传递是默认方式,是指根据函数定义顺序给函数默认参数赋值,对于没有赋值参数的位置,需要按照函数定义的参数顺序传参。例如:

def func(a, b, c):
    print(a, b, c)
    
func(1, 2, 3)

以上代码中,a、b、c 都是位置参数,如果函数调用时不按函数定义的顺序传递位置参数,就会报错。

关键字参数传递是指按照参数名称传参,可以不按照参数定义的顺序传参,且不受位置的限制。例如:

def func(a, b, c):
    print(a, b, c)
    
func(c=3, b=2, a=1)

以上代码中,a、b、c 都是关键字参数,函数调用时可以按任意顺序传递参数。

此外,Python 还可以使用默认参数和可变参数传递参数。

默认参数是指在函数定义时指定一个默认值,如果在函数调用时没有传递该参数则使用默认值。例如:

def func(a, b, c=3):
    print(a, b, c)
    
func(1, 2)   # 输出结果:1 2 3

以上代码中,c 指定了默认值 3,如果在调用函数时未传递 c,则默认使用该默认值。

可变参数支持传递数量可变的参数,有两种类型的可变参数:*args 和 **kwargs。

*args 用于传递可变长度的位置参数,示例如下:

def func(*args):
    print(args)
    
func(1, 2, 3)   # 输出结果:(1, 2, 3)

以上代码中,*args 表示可接收任意数量的位置参数,并且使用一个元组将它们打包。

**kwargs 用于传递可变长度的关键字参数,示例如下:

def func(**kwargs):
    print(kwargs)
    
func(a=1, b=2, c=3)   # 输出结果:{'a': 1, 'b': 2, 'c': 3}

以上代码中,**kwargs 表示可接收任意数量的关键字参数,并且使用一个字典将它们打包。

以上是 Python 函数传递参数的基础知识,了解传参的方式能更好的掌握 Python 函数的使用方法。