在 Python 中,函数可以接受可变数量的参数,通常通过 *args 和 **kwargs 来实现。
-  *args:可变位置参数
 使用*args可以传递任意数量的位置参数。它会将这些参数打包成一个元组(tuple)供函数使用。示例: def my_function(*args):for arg in args:print(arg)my_function(1, 2, 3, 'Python')输出: 1 2 3 Python在这个例子中, my_function可以接受任意数量的参数,并逐个打印。
-  **kwargs:可变关键字参数
 使用**kwargs可以传递任意数量的关键字参数,它会将这些参数打包成一个字典(dictionary)。示例: def my_function(**kwargs):for key, value in kwargs.items():print(f'{key} = {value}')my_function(name='Alice', age=30, language='Python')输出: name = Alice age = 30 language = Python在这个例子中, my_function可以接受任意数量的关键字参数,并以键值对的形式打印。
-  *args和**kwargs组合使用
 可以同时使用*args和**kwargs来接收任意数量的参数和关键字参数。示例: def my_function(*args, **kwargs):print("Positional arguments:", args)print("Keyword arguments:", kwargs)my_function(1, 2, 3, name='Alice', age=30)输出: Positional arguments: (1, 2, 3) Keyword arguments: {'name': 'Alice', 'age': 30}
这让函数非常灵活,可以处理不同数量和类型的参数,常用于构建通用函数或框架。