在Python中,
*args
和**kwargs
通常用于函数定义中,它们允许你编写能够接受任意数量的位置参数和关键字参数的函数。*args
:它用来接受任意数量的位置参数,这些参数将被封装成一个元组(tuple)。当你不确定函数将会接收多少位置参数时,可以使用*args
。**kwargs
:它用来接受任意数量的关键字参数,这些参数将被封装成一个字典(dict),其中关键字作为键,对应的值作为值。当你不确定函数将会接收多少关键字参数时,可以使用**kwargs
。
def example_function(*args, **kwargs):
print("Positional arguments (*args):")
for arg in args:
print(arg)
print("\nKeyword arguments (**kwargs):")
for key, value in kwargs.items():
print(f"{key} = {value}")
# 使用 *args 和 **kwargs 调用函数
example_function(1, 2, 3, name="Alice", age=30)
-----------------------------
输出:
Positional arguments (*args):
1
2
3
Keyword arguments (**kwargs):
name = Alice
age = 30