我有一个与函数参数匹配的数组:
TmpfieldNames = []
TmpfieldNames.append(Trademark.name)
TmpfieldNames.append(Trademark.id)
return func(Trademark.name, Trademark.id)func(Trademark.name.Trademark.id)可以工作,但func(TmpfieldNames)不能。如果不像func(TmpfieldNames[0], TmpfieldNames[1])那样显式地索引到数组中,我如何调用函数
发布于 2011-02-11 01:50:41
使用*,您可以从list或tuple解包参数,而**可以解包dict中的参数。
>>> range(3, 6) # normal call with separate arguments
[3, 4, 5]
>>> args = [3, 6]
>>> range(*args) # call with arguments unpacked from a list
[3, 4, 5]来自documentation的示例。
发布于 2011-02-11 01:49:02
我想你要找的是:
def f(a, b):
print a, b
arr = [1, 2]
f(*arr)发布于 2011-02-11 01:50:13
你要找的是:
func(*TmpfieldNames)但这不是此类功能的典型用例;我假设您创建它是为了演示。
https://stackoverflow.com/questions/4960689
复制相似问题