在 python 中,*args 和 **kwargs 都代表 1个 或 多个 参数的意思。*args 传入tuple 类型的无名参数,而 **kwargs 传入的参数是 dict 类型。下文举例说明。
1.*args 的用法,以下测试代码:
def test(*args):
print(args)
for i in args:
print(i) test(1,2,3) # 输出值分别为
# (1,2,3)
#
#
#
2.**kwargs 的用法,以下测试代码:
def test(**kwargs):
print(kwargs)
keys = kwargs.keys()
value = kwargs.values()
print(keys)
print(value) test(a=1,b=2,c=3,d=4) # 输出值分别为
# {'a': 1, 'b': 2, 'c': 3, 'd': 4}
# dict_keys(['a', 'b', 'c', 'd'])
# dict_values([1, 2, 3, 4])