我想将list的元素作为函数参数传递,如下所示:
def foo(a,b,c):
#do something
list=[1,2,3]
foo(list)
我不能使用foo(list [0],list [1],list [2]),因为我不知道列表中有多少元素以及函数有多少参数
在此代码中查看输入函数:http://pastebin.com/ajDrFmzr
现在它只传递1个参数(列表),我想将其作为少数参数传递
答案 0 :(得分:5)
使用the *
argument unpacking operator:
seq = [1, 2, 3]
foo(*seq)
所以在the input
function中你可以使用
getattr(self, func)(*args)
PS。不要为变量list
命名,因为它会影响同名内置函数。