如何在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)