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
以上就是。