[python] Dynamický import
Petr Janda
jape na entropy.cz
Čtvrtek Leden 4 11:26:28 CET 2007
V Thu, 04 Jan 2007 01:53:02 -0800, Vaclav Vais napsal(a):
> Ahoj,
>
> potřeboval bych poradit jak provést import a následně instanci
> třídy, když načtu názey třídy z DB. V balíčku je několik
> objektů, které mají stejné metody, potřebuji na základě dotazu
> do DB naimportovat konkrétní třídu z konkrétního modulu (názvy
> jsou stejné) a pak vytvořit instanci, název třídy je v proměnné.
>
> nějak takto:
>
> className="třída"
> importuj(className)
> instance=vytvořInstanci(className)
>
> Díky moc za radu
>
> V.
Ahoj,
zkusil bych:
className='jmenoTridy'
packageName = 'jmenoBalicku'
moduleName = 'jmenoModulu'
modul = __import__('%s.%s'
%(packageName,mouleName),globals(),locals(),['%s' %packageName])
trida = modul.__getattribute__(className)
instance = trida()
--
Petr Janda
Další informace o konferenci Python