文章目录
args 是 arguments 的缩写,表示位置参数;kwargs 是 keyword arguments 的缩写,表示关键字参数。
def test01(*args):
print("类型:",type(args))
print(args)
def test02(**kwargs):
print("类型:",type(kwargs))
print(kwargs)
if __name__ == '__main__':
test01()
test02()
结果:
def test01(a, b, *args):
print("类型:",type(args))
print(args)
test01(1,2,4,6)
'''
类型: <class 'tuple'>
(4, 6)
'''
上面函数中*args 的返回值是一个元组,准确的说是将传入的参数中不确定的参数以元组的形式保存下来
python中, 函数用*args来获取不确定数量参数的经典写法!
a,b,*rest= range(5)
print(a,b,rest)
# 0 1 [2, 3, 4]
def test02( a, **kwargs):
print(a)
print("类型:",type(kwargs))
print(kwargs)
test02(1,b=2,c=4,d=6)
'''
结果:
1
类型: <class 'dict'>
{'b': 2, 'c': 4, 'd': 6}
'''
**kwargs的返回值是一个字典,传参时必须以确定的键值对来传入,及以键值对保存下来,不按键值对参数传会报错