如何在Python中扩展函数参数列表

有没有语法可以让你扩展一个函数调用的参数列表?

例:

# Trivial example function, not meant to do anything useful. def foo(x,y,z): return "%d, %d, %d" %(x,y,z) # List of values that I want to pass into foo. values = [1,2,3] # I want to do something like this, and get the result "1, 2, 3": foo( values.howDoYouExpandMe() ) 

它存在,但很难search。 我想大多数人都把它称为“ 啪 ”牌运营商。

它在文档中是“ 解包参数列表 ”。

你会像这样使用它: foo(*values) 。 还有一个字典:

 d = {'a': 1, 'b': 2} def foo(a, b): pass foo(**d) 

你应该使用*运算符,如foo(*values)阅读Python文档解压参数列表 。

另外,请阅读: http : //www.saltycrane.com/blog/2008/01/how-to-use-args-and-kwargs-in-python/

 def foo(x,y,z): return "%d, %d, %d" % (x,y,z) values = [1,2,3] # the solution. foo(*values) 

尝试以下操作:

 foo(*values) 

这可以在Python文档中find,如解包参数列表 。

这可以通过以下方式完成:

 foo(*values)