2011-06-12 17 views

Odpowiedz

40

Tak, ale nie przekazuje się ich do getattr(); wywołujesz funkcję jako normalną, gdy już masz do niej odniesienie.

getattr(obj, 'func')('foo', 'bar', 42) 
23

Jeśli chcesz wywołać metody dynamicznej z dynamiczną listę argumentów/Argumenty słów kluczowych, można wykonać następujące czynności:

function_name = 'wibble' 
args = ['flip', 'do'] 
kwargs = {'foo':'bar'} 

getattr(obj, function_name)(*args, **kwargs) 
+0

Dzięki za podejściem dodatkowe kwargs. – dave4jr

Powiązane problemy