Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Jánn 03. 09. 2015, 21:03:14
-
Ahoj, naimportuji soubor s kódem
from muj.soubor import fnnazev
ale nevím jak napsat tento řádek
func = getattr(obj, "method", None)
abych následně zavolal
func(args)
pomůže niekdo ? Dekuji
-
getattr(obj, name[, default]) vrací HODNOTU názvu atributu daného objektu.
Takže ve vašem případě má func buď hodnotu atributu method z objektu obj nebo hodnotu None (výchozí, pokud atribut neexistuje). Co chcete docílit?
-
Aha, tak to hledám něco jiného :-(
funkce = ['fnnazev', 'fnotehr', 'fnadd']
chci zavolat funkci funkce[0](a, b, c, d)
-
Nejspíš bude v locals(). Takže
locals()[funkce[0]](a, b, c, d)
Ale pokud je v modulu, tak třeba takto:
import os
os.__dict__["listdir"]("/home")
-
mod = __import__('muj.soubor',globals(),locals(),[])
fnc = getattr(mod,'jmeno_funkce')
fnc()
https://docs.python.org/2/library/functions.html#__import__