2018-12-03
阅读量:
822
区分Python中的args和kwargs
* ARGS
python中函数定义中的特殊语法* args用于将可变数量的参数传递给函数。它用于传递非keyworded,可变长度的参数列表。
- 语法是使用符号*来接受可变数量的参数; 按照惯例,它通常与args一词一起使用。
- 什么* ARGS允许你做的是采取比以前定义的正式参数的数量更多的参数。使用* args,可以将任意数量的额外参数添加到当前的形式参数(包括零额外参数)。
- 例如:我们想要生成一个乘法函数,该函数接受任意数量的参数并能够将它们相乘。它可以使用* args完成。
- 使用*,我们与*关联的变量变成了一个可迭代的意思,你可以做一些事情,比如迭代它,运行一些更高阶的函数,比如map和filter等。
- 使用* arg的示例:
# Python program to illustrate
# *args for variable number of arguments
def myFun(*argv):
for arg in argv:
print (arg)
myFun('Hello', 'Welcome', 'to', 'GeeksforGeeks')
python中函数定义中的特殊语法** kwargs用于传递一个keyworded,variable-length参数列表。我们使用名称kwargs和双星。原因是因为双星允许我们传递关键字参数(以及它们中的任意数量)。
- 关键字参数是在将变量传递给函数时为变量提供名称的位置。
- 人们可以认为kwargs是一个字典,它将每个关键字映射到我们传递给它的值。这就是为什么当我们遍历kwargs时,似乎没有任何打印出来的顺序。
- ** kwargs的使用示例:
# Python program to illustrate
# *kargs for variable number of keyword arguments
def myFun(**kwargs):
for key, value in kwargs.items():
print ("%s == %s" %(key, value))
# Driver code
myFun(first ='Geeks', mid ='for', last='Geeks')






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论