*args和**kwargs的区别

例题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&
上一篇:kwargs.pop


下一篇:Python:函数的参数