如何在python中将列表扩展为函数参数

How to expand a list to function arguments in Python

本问题已经有最佳答案,请猛点这里访问。

是否有语法允许您将列表扩展到函数调用的参数中?

例子:

1
2
3
4
5
6
7
8
9
# 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() )


是否它,但它的硬的两个搜索。我想大多数人叫它"海绵"放映。

它在"AA"的说法unpacking文件列表"。

你会使用它,这样foo(*values):。我们的词典也一:

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


你应该使用"* foo(*values)放映,喜欢读《Python文件解包参数列表。

也,你读这个HTML www.saltycrane.com /博客/ 2008年01月如何使用两个参数和kwargs的Python /

1
2
3
4
5
6
7
def foo(x,y,z):
   return"%d, %d, %d" % (x,y,z)

values = [1,2,3]

# the solution.
foo(*values)


好的,可以用:

1
foo(*values)

试试下面的:

1
foo(*values)

这可以被发现在Python文档作为unpacking参数列表。