Python 如何使用可变长度的函数参数
顾名思义,具有可变长度的参数可以采用各种值。您可以使用 *
(例如*args
)定义一个可变参数来显示该函数可以接受可变数量的参数。
Python中可变长度参数的观察结果如下。
- 指定可变长度参数的
*args
不是必需的。唯一需要的是*;变量名称可以是任何内容,如*names
或*numbers
。 -
使用可变长度参数可以向函数发送零个或多个参数。
-
用于存储传递给
*args
的值的元组。 -
可以在变量args之前使用正式参数,但不能在其后使用。您可以在可变参数后面使用关键字参数。
阅读更多:Python 教程
函数中的*args
要在Python中向函数传递可变数量的参数,请在函数说明中使用特殊语法*args
。它用于传递一个变长、无关键字的参数列表。根据惯例,在采用可变数量参数的语法中经常使用带有单词args的*
号。
您可以使用*args
接受比先前定义的正式参数数量更多的附加参数。使用*args
可以向您当前的正式参数添加任意数量的额外参数(包括零个额外参数)。
例如,我们希望创建一个乘法函数,可以同时乘以任意数量的输入。使用可变参数使您的函数更适应数量不确定的情况。想象一下,您有一个添加数字的函数。
示例1
以下示例演示带有固定数量参数的常规函数的用法。
输出
生成的输出如下所示。
您可以指定函数接受可变数量的参数,并可以用于将多达’n’个数字相加,方法是更改参数为*args。
示例2
以下示例演示使用变量长度参数的函数的用法。
输出
生成的输出如下所示。
示例3
看看另一个例子 –
输出
产生的输出如下。
函数中的 **kwargs
使用特定的语法 **kwargs
在 Python 函数声明中传递关键字变量长度参数。使用名称 kwargs 来实现双星,双星的能力是传递关键字参数的原因(和任何数量的关键字参数)。将变量传递给函数时,您可以使用关键字参数为其指定名称。
kwargs 可以被视为将每个术语与传递的值相关联的字典。 因此,当我们通过它们进行迭代时,似乎没有任何顺序来打印 kwargs。
例子
以下示例使用 **kwargs 获取参数。
输出
产生的输出如下。