python中args和kwargs参数的使用
可变参数:
- 在python中,规定了函数中的形参前带*的,称为可变位置参数,通常用*args表示。
-
*args表示一个元组,传入的参数值会被放到这个元组里面,类型可以是任意的。
可变关键字参数:
- 同理,函数中形参前带**的,成为可变关键字参数,通常用**kwargs表示。
- **表示一个字典,传入的参数以键值对的形式存放在了字典里面。
下面我们来看个例子:
我们可以看到,*args传入的参数类型可以有多种,且输出来的类型是元组。
而**kwargs传入的参数形式必须写成“变量名=内容”,然而输出来的类型是字典。
注意:传入*args和**kwargs参数的位置不能调换位置,否则会报错。
当然,我们也可以利用传进来的无名参数进行各种操作,就像正常参数一样使用,只不过*args一次可以传进多个参数,操作起来更方便。
以上仅为本人的一点理解,不足之处欢迎指正,谢谢!