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

如何定义默认参数和可变参数(How to define default arguments and variable arguments in Python)

发布时间:2023-05-31 08:27:43

在Python中,函数参数可以定义为默认参数和可变参数。默认参数是在函数定义中指定的参数值,而可变参数是可以传递任意数量的参数。

默认参数

默认参数是在定义函数时指定的参数值,这些值在调用函数时可以被覆盖或保留。默认参数指定的值只在函数 次定义时计算。

默认参数通过在函数定义的括号中指定名称和相应值来定义。例如:

def my_function(a, b=2):
    print(a, b)

在这个例子中,b 是一个具有默认值 2 的默认参数。如果在函数调用中不传递 b,则默认值 2 将用作参数的值。

my_function(1)   # 输出为 "1, 2"
my_function(1, 3)   # 输出为 "1, 3"

可变参数

可变参数可以接受任意数量的位置参数。在Python中,我们可以用 *args 来表示可变参数。

def my_function(*args):
    for arg in args:
        print(arg)

my_function(1, "hello", True)  # 输出为 "1, hello, True"

使用可变参数时,我们可以在函数中处理传递的参数。这对于接受不同数量参数的函数非常有用。

除了 *args ,Python 还支持收集任意数量的关键字参数。这可以通过在参数前添加两个星号 ** 来实现。

def my_function(**kwargs):
    for key, value in kwargs.items():
        print(key, value)

my_function(name="Alice", age=25)   # 输出为 "name Alice, age 25"

在这个例子中, **kwargs 表示任意数量的关键字参数,它们被存储在一个字典中。

总结

在Python中,函数支持默认参数和可变参数。默认参数是在函数定义时指定的参数值,可变参数是在函数调用时指定的任意数量的参数。此外,函数还可以使用可变数量的关键字参数。这些功能可以大大简化代码的编写。