Python函数中不定长参数是指函数的参数个数不确定,可以是一个,也可以是多个。它们的写法是在参数前面加上一个星号(*),比如:def func(*args)。
Python函数中不定长参数的用法
1、*args:表示可以接收任意个数的参数,它是一个元组,可以用来接收任意个数的参数,比如:
def func(*args): for arg in args: print(arg) func(1, 2, 3, 4, 5) # 1 # 2 # 3 # 4 # 5
2、**kwargs:表示可以接收任意个数的关键字参数,它是一个字典,可以用来接收任意个数的关键字参数,比如:
def func(**kwargs): for key, value in kwargs.items(): print(key, value) func(a=1, b=2, c=3, d=4, e=5) # a 1 # b 2 # c 3 # d 4 # e 5
3、*args和**kwargs可以同时使用,比如:
def func(*args, **kwargs): for arg in args: print(arg) for key, value in kwargs.items(): print(key, value) func(1, 2, 3, a=4, b=5, c=6) # 1 # 2 # 3 # a 4 # b 5 # c 6
4、*args和**kwargs可以用来接收任意个数的参数,比如:
def func(*args, **kwargs): print(args) print(kwargs) func(1, 2, 3, a=4, b=5, c=6) # (1, 2, 3) # {'a': 4, 'b': 5, 'c': 6}
5、*args和**kwargs可以用来实现函数的可变参数,比如:
def func(*args, **kwargs): for arg in args: print(arg) for key, value in kwargs.items(): print(key, value) args = (1, 2, 3) kwargs = {'a': 4, 'b': 5, 'c': 6} func(*args, **kwargs) # 1 # 2 # 3 # a 4 # b 5 # c 6
以上就是。