我不能理解这些类型的函数在哪里使用,以及这些参数与普通参数的工作方式有何不同。我见过他们很多次,但从来没有机会正确地理解他们。
例如:
def method(self, *links, **locks):
#some foo
#some bar
return
我知道我可以搜索文档,但我不知道要搜索什么。
发布于 2010-11-30 02:03:04
*args
和**keywordargs
表单分别用于传递参数列表和参数字典。所以如果我有一个像这样的函数:
def printlist(*args):
for x in args:
print(x)
我可以这样称呼它:
printlist(1, 2, 3, 4, 5) # or as many more arguments as I'd like
为此
def printdict(**kwargs):
print(repr(kwargs))
printdict(john=10, jill=12, david=15)
*args
的行为类似于列表,而**keywordargs
的行为类似于字典,但是您不必显式地将list
或dict
传递给函数。
有关更多示例,请参阅this。
https://stackoverflow.com/questions/4306574
复制相似问题