并不是必须写成 *args 和 **kwargs。
只有变量前面的 *(星号)才是必须的。 你也可以写成*var 和**vars 。而写成 *args 和**kwargs 只是一个通俗的命名约定。
*args 表示可变数量(≥0)的非键值对参数。(任意长度的列表)
**kwargs 表示可变数量(≥0)的键值对(关键字)参数。(任意长度的字典)
用法:
1.可使用 *args 和 **kwargs 来定义函数
1 | # 使用 *args 定义函数 |
2.可使用 *args 和 **kwargs 来调用函数
1 | # 使用 *args 调用函数 |
鸣谢:
怎样使用*args 和 **kwargs - 《Python 进阶》
Use of *args and **kwargs - stackoverflow