函数形参
*args 表示的是把传进来的位置参数都放在元组args中,调用func(a, b, c)时,args = (a, b, c)
def func(*args):
if len(args) == 0:
print('None')
else:
print(args)
'''
有时候不确定有多少个参数,此时这种方法传参,
可能为0个也可能为n个。不管有多少个
在函数内部都被存放在以形参名为标识符的tuple中
'''
func(1)
func()
func(1, 2, 3)
输出:
(1,)
None
(1, 2, 3)
**kwargs表示把传进来的位置参数都放在字典kwargs中,调用func(a=0, b=1, c=2)时,kwargs= {‘a’:0, ‘b’:1, ‘c’:2} 。
def func(**kwargs):
if len(kwargs) == 0:
print('None')
else:
print(kwargs)
func()
func(a=1, b=2)
输出:
None
{‘a’: 1, ‘b’: 2}