例题1
def func(*args, **kwargs):
print(args)
print(kwargs)
# * :魔性用法:当定义一个函数的时候,*代表聚合
# 当执行一个函数的时候:*代表打散
func(1, 2, 3, name="alex", age=1000)
#结果
# (1, 2, 3)
# {'name': 'alex', 'age': 1000}
理解1
当传入的参数数量不定的时候,才会用*args, **kwargs,
*args可以接任意的位置参数,**kwargs可以接所有的关键字参数
def func(*args, **kwargs):
print(args)
print(kwargs)
# * :魔性用法:当定义一个函数的时候,*代表聚合。
# 当执行一个函数的时候:*代表打散
func(1, 2, 3, name="alex", age=1000)
# 结果
# (1, 2, 3)
# {'name': 'alex', 'age': 1000}
理解2
def func(*args, **kwargs):
print(*args)
# print(kwargs)
func(1, 2, 3, name="alex", age=1000)
# 结果,没有报错
# (1, 2, 3)
但是:
理解3
def func(*args, **kwargs):
# print(*args)
print(**kwargs)
func(1, 2, 3, name="alex&