@songying
2019-01-02T16:04:42.000000Z
字数 337
阅读 1137
*args
与 **kwargs
python
二者主要用于函数定义,可以使你将不定数量的参数传递给一个函数。
*args
用来发送一个⾮键值对的可变数量的参数列表给⼀个函数, args其本质上是一个元组**kwargs
将不定长度的键值对作为参数传递给一个函数。kwargs 本质上是一个字典。*arg
与 *kwargs
来调用函数
args = ("two", 3, 5) # 提前定义args
kwargs = {"arg3": 3, "arg2": "two", "arg1": 5} # 提前定义kwargs
test_func(normal_arg, *args, **kwargs) # 在函数中先是普通参数,然后是`*args`,最后是`**kwargs` 。
视作需求而定,最常用为装饰器。