📅  最后修改于: 2023-12-03 15:34:24.743000             🧑  作者: Mango
在Python中,*args 和 **kwargs是常用的函数参数。它们允许函数接收可变数量的参数,这在很多情况下非常有用。
使用*args,你可以向函数传递任意数量的位置参数。位置参数是指那些没有指定参数名的参数。
def my_function(*args):
for i in args:
print(i)
my_function(1, 2, 3, 4)
输出结果:
1
2
3
4
在这个例子中,我们定义了一个函数my_function,它使用*args表示接受任意数量的位置参数。在函数中,我们通过for循环遍历args并输出结果。
**kwargs用于传递一个可变数量的关键字参数,它使得函数能够接收任意数量的关键字参数。
def my_function(**kwargs):
for key, value in kwargs.items():
print(key, value)
my_function(name='John', age=25, city='New York')
输出结果:
name John
age 25
city New York
在这个例子中,我们定义了一个函数my_function,它使用**kwargs表示接受任意数量的关键字参数。在函数中,我们使用items()方法遍历kwargs,并输出每个参数的键和值。
*args和**kwargs可以同时使用,而且可以按照任意顺序。
def my_function(*args, **kwargs):
for i in args:
print(i)
for key, value in kwargs.items():
print(key, value)
my_function(1, 2, 3, name='John', age=25, city='New York')
输出结果:
1
2
3
name John
age 25
city New York