Re: [python] Dynamický import

2017-03-31 Tema obsahu Petr Janda
V Thu, 04 Jan 2007 11:27:22 +0100, radek napsal(a):

> Muzete sem napsat v jakem konkretnim pripade to potrebujete? To je
> tech importu tolik, ze nejdou udelat vsechny na zacatku a pak vybrat
> jenom konkretni class pro instanci?
> 
> Sice dynamicky import jde, ale pak to dost znesnadnuje analyzu chyb.
> 
> Radek
> 
Já podobně řeším zobrazení rubriky/článku v on.line časopise.
Když si vymyslím nový formát, napíšu potřebnou třídu, která
implementuje metodu známého jména (u mě html()) a v db řeknu
rubrice/článku aby ji používal/a pro své zobrazení. Přijde mi to
elegantní a flexibilní.

-- 
Petr Janda

___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz


Re: [python] Dynamický import

2007-01-04 Tema obsahu Petr Janda
V Thu, 04 Jan 2007 11:27:22 +0100, radek napsal(a):

> Muzete sem napsat v jakem konkretnim pripade to potrebujete? To je
> tech importu tolik, ze nejdou udelat vsechny na zacatku a pak vybrat
> jenom konkretni class pro instanci?
> 
> Sice dynamicky import jde, ale pak to dost znesnadnuje analyzu chyb.
> 
> Radek
> 
Já podobně řeším zobrazení rubriky/článku v on.line časopise.
Když si vymyslím nový formát, napíšu potřebnou třídu, která
implementuje metodu známého jména (u mě html()) a v db řeknu
rubrice/článku aby ji používal/a pro své zobrazení. Přijde mi to
elegantní a flexibilní.

-- 
Petr Janda

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] Dynamický import

2007-01-04 Tema obsahu Vaclav Vais
Je to podobné jako interface v Java. K řešení konkrétního
"problému" je v IS jeden objekt, časem problémy přibývají a tím
i objekty. Vím co je to za problém tak potřebuji konkrétní objekt
na ošetření.

Snad jsem se vyjádřil srozumitelně.


radek napsal:
> Muzete sem napsat v jakem konkretnim pripade to potrebujete? To je
> tech importu tolik, ze nejdou udelat vsechny na zacatku a pak vybrat
> jenom konkretni class pro instanci?
>
> Sice dynamicky import jde, ale pak to dost znesnadnuje analyzu chyb.
>
> Radek
>
> On 1/4/07, mtip <[EMAIL PROTECTED]> wrote:
> > VV> Ahoj,
> >
> > VV> potřeboval bych poradit jak provést import a následně instanci
> > VV> třídy, když načtu názey třídy z DB. V balíčku je několik
> > VV> objektů, které mají stejné metody, potřebuji na základě dotazu
> > VV> do DB naimportovat konkrétní třídu z konkrétního modulu (názvy
> > VV> jsou stejné) a pak vytvořit instanci, název třídy je v proměnné.
> >
> > VV> nějak takto:
> >
> > VV> className="třída"
> > VV> importuj(className)
> > VV> instance=vytvořInstanci(className)
> >
> > VV> Díky moc za radu
> >
> > VV> V.
> >
> > VV> ___
> > VV> Python mailing list
> > VV> Python@py.cz
> > VV> http://www.py.cz/mailman/listinfo/python
> >
> >
> >
> >
> > ---
> >
> > Ahoj, ted sem zrovna resil neco podobneho, ja pouzivam tohle:
> > mod="util.modul"
> > cls="className"
> > eval(compile("import %s" % mod, "", "exec"))
> > instance=eval("%s.%s()" % (mod,cls))
> >
> > --
> > Mirek N.
> >
> > ___
> > Python mailing list
> > Python@py.cz
> > http://www.py.cz/mailman/listinfo/python
> >

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] Dynamický import

2007-01-04 Tema obsahu Vaclav Vais
Přesně takto jsem si to představoval.

Díky moc!

-
> 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

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] Dynamický import

2007-01-04 Tema obsahu Petr Janda
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
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] Dynamický import

2007-01-04 Tema obsahu radek
Muzete sem napsat v jakem konkretnim pripade to potrebujete? To je
tech importu tolik, ze nejdou udelat vsechny na zacatku a pak vybrat
jenom konkretni class pro instanci?

Sice dynamicky import jde, ale pak to dost znesnadnuje analyzu chyb.

Radek

On 1/4/07, mtip <[EMAIL PROTECTED]> wrote:
> VV> Ahoj,
>
> VV> potřeboval bych poradit jak provést import a následně instanci
> VV> třídy, když načtu názey třídy z DB. V balíčku je několik
> VV> objektů, které mají stejné metody, potřebuji na základě dotazu
> VV> do DB naimportovat konkrétní třídu z konkrétního modulu (názvy
> VV> jsou stejné) a pak vytvořit instanci, název třídy je v proměnné.
>
> VV> nějak takto:
>
> VV> className="třída"
> VV> importuj(className)
> VV> instance=vytvořInstanci(className)
>
> VV> Díky moc za radu
>
> VV> V.
>
> VV> ___
> VV> Python mailing list
> VV> Python@py.cz
> VV> http://www.py.cz/mailman/listinfo/python
>
>
>
>
> ---
>
> Ahoj, ted sem zrovna resil neco podobneho, ja pouzivam tohle:
> mod="util.modul"
> cls="className"
> eval(compile("import %s" % mod, "", "exec"))
> instance=eval("%s.%s()" % (mod,cls))
>
> --
> Mirek N.
>
> ___
> Python mailing list
> Python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] Dynamický import

2007-01-04 Tema obsahu mtip
VV> Ahoj,

VV> potřeboval bych poradit jak provést import a následně instanci
VV> třídy, když načtu názey třídy z DB. V balíčku je několik
VV> objektů, které mají stejné metody, potřebuji na základě dotazu
VV> do DB naimportovat konkrétní třídu z konkrétního modulu (názvy
VV> jsou stejné) a pak vytvořit instanci, název třídy je v proměnné.

VV> nějak takto:

VV> className="třída"
VV> importuj(className)
VV> instance=vytvořInstanci(className)

VV> Díky moc za radu

VV> V.

VV> ___
VV> Python mailing list
VV> Python@py.cz
VV> http://www.py.cz/mailman/listinfo/python




---

Ahoj, ted sem zrovna resil neco podobneho, ja pouzivam tohle:
mod="util.modul"
cls="className"
eval(compile("import %s" % mod, "", "exec"))
instance=eval("%s.%s()" % (mod,cls))

-- 
Mirek N.

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python