Ahoj,
nejjednodussi zpusob, ktery me napada, vypada takhle:
>>> def function(x, y):
... print x + y
...
>>> function_name = "function"
>>> eval("%s(1,2)" % function_name)
3
Urcite to neni programatorsky uplne nejkrasnejsi a "nejlepcejsi", ale
funguje to. V podstate se vyuzije funkce *eval*:
http://docs.python.org/2/library/functions.html#eval
ktera se pokusi vyhodnotit zadany retezec. Nejdrive se tedy provede operace
*"%s(1,2)" % function_name* jejimz vystupem je retezec *"function(1,2)" *a
ten se pak preda jako parametr do funkce *eval*.
Pokud ale chces volat metodu (funkci uvnitr tridy), tak je mozne pouzit
getattr:
http://docs.python.org/2/library/functions.html#getattr
ale tam nevim o zpusobu, jak metode predat parametr.
2013/10/9 <[email protected]>
> Mám název funkce v proměnné, tak bych se chtěl zeptat jak tu funkci můžu
> zavolat? jde mi o to abych dále té funkci mohl dát další parametry
> _______________________________________________
> Python mailing list
> [email protected]
> http://www.py.cz/mailman/listinfo/python
>
--
^nu.friX
aka Dan Pressl
Reality is useless & F4Q DMNC!!!
Every syntax creates code. And code is poetry.
_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python