在Python中,要定义一个可变参数函数,可以使用*args和**kwargs。*args用于接收任意数量的非关键字(位置)参数,而**kwargs用于接收任意数量的关键字参数。
下面是一个使用*args和**kwargs定义可变参数的示例:
def my_function(*args, **kwargs):
print("非关键字参数:", args)
print("关键字参数:", kwargs)
# 调用函数时传入任意数量的非关键字参数
my_function(1, 2, 3, 4, 5)
# 调用函数时传入任意数量的关键字参数
my_function(a=1, b=2, c=3, d=4, e=5)
输出结果:
非关键字参数: (1, 2, 3, 4, 5)
关键字参数: {}
非关键字参数: ()
关键字参数: {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
在这个示例中,my_function可以接收任意数量的非关键字参数和关键字参数。当调用函数时,这些参数被打包成元组和字典,并分别存储在args和kwargs中。