120

如何使用 Python 列表(例如params = ['a',3.4,None])作为函数的参数,例如:

def some_func(a_char,a_float,a_something):
   # do stuff
4

4 回答 4

173

您可以使用 splat 运算符执行此操作:

some_func(*params)

这会导致函数接收每个列表项作为单独的参数。这里有一个描述:http: //docs.python.org/tutorial/controlflow.html#unpacking-argument-lists

于 2011-02-12T17:48:17.720 回答
63

这已经得到了完美的回答,但是由于我刚刚来到这个页面并且没有立即理解,所以我将添加一个简单但完整的示例。

def some_func(a_char, a_float, a_something):
    print a_char

params = ['a', 3.4, None]
some_func(*params)

>> a
于 2013-04-16T18:04:55.767 回答
14

使用星号:

some_func(*params)
于 2011-02-12T17:45:30.513 回答
10

您需要参数解包运算符 *.

于 2011-02-12T17:50:01.930 回答