2009-11-06 7 views

Odpowiedz

4

jeśli nazwa funkcji jest ciągiem znaków, można zrobić:

getattr(obj, 'func')(*arr)  # where obj is the namespace that hold func 
+0

To jest dokładnie to, co robię. – DerKlops

11

Wywołanie funkcji z tablicy poprzedzonego *:

function(*array) 
+0

To jest właściwa odpowiedź. – cwallenpoole

1

Twój może wywołać funkcję i przekazywać argumenty przez * znak
np.

def add(a, b): 
    return a + b 

arg = (1, 2) 
add(*arg) 

Można również użyć dict przekazać par argument gwiazdy podwójnej **

ex.

arg = {a: 1, b: 2} 
add(**arg)