一文搞懂*argv和**kwargs
大多刚接触Python的学员,会对*argv和**kwargs这两个魔法变量的用法产生困惑,今天本文将全面梳理下这两个小可爱的使用方法,让各位同学彻底搞懂它们的规则。 这两个变量主要用户函数定义,有了它俩你可以将不定数量的参数传递给一个函数。这里,需要申明下:在写Python代码时,我们习惯将它俩写成*argv和**kwargs,这只是一个书写习惯,你也可以任性地用*var和**kvars来代替它们,要注意的是符号*和**是必须写的。 函数在实际执行时,编程人员无法预先知道会被传入多少实参,这是不确定量,函数知道使用者会传多少个参数给它,幸好Python有*argv和**kwargs,有它俩帮我们统统接收。 听起来是不是很简单?实际上就是这么简单,下面通过两个例子分别说明。 *args的用法 开宗明义,*args用来接收一个非键值对的不定数量的参数列表传给函数,记住,它接受的是列表。下面例子可以帮助理解: 1 def test(normal_arg,*argv): 2 print("the normal arg is :",normal_arg) 3 for arg in argv: 4 print("we can read from *argv:",arg) 例1 ▲ 执行test('Python','C','Java','C++')之后,系统会有如下输出: 1 the