Můžeš použít funkci __import__ asi takto:
>>> __import__("math").factorial(9)
362880
Nevím, jestli to je to, cos chtěl, ale v zásadě mi to přijde podobné.
> From: [email protected]
> Date: Wed, 25 May 2016 11:18:45 +0200
> To: [email protected]
> Subject: Re: [python] Plně kvalifikovaný název místo importu?
>
> Ahoj,
>
> tohle bohužel takhle nejde.
>
> Jedním z důvodů (aspoň podle mě :) ) je, že svět modulů a balíčků je jiný
> svět, než svět proměnných a hodnot uvnitř nich. Takže Python by vlastně
> nevěděl, co a jak naimportovat. Když to napíšete explicitně jako import, tak
> je jasné, který modul to přesně je.
>
> Je to vidět i z toho, že kdekoliv se nějak specifikuje cesta k Python objektu
> - např. app v gunicornu - tak je modul zřetelně oddělený od "cesty" v tom
> modulu.
>
> V Javě to lze, ale to je dost možná proto, že její třídy mají ve skutečnosti
> interně plný (absolutní) název a navíc mají jasně dané místo v adresářové
> struktuře.
>
> Petr Messner
>
> 25. 5. 2016 v 10:17, Libor Jelínek <[email protected]>:
>
> > Ahoj,
> > existuje nějaký způsob např. zavolání funkce modulu plně kvalifikovaným
> > názvem aniž by ho bylo třeba nutné nejprv importovat?
> >
> > Místo
> >
> > import tempfile
> > tempfile.gettempdir()
> >
> > jen něco jako
> >
> > tempfile.gettempdir()
> >
> > ?
> > _______________________________________________
> > Python mailing list
> > [email protected]
> > http://www.py.cz/mailman/listinfo/python
> >
> > Visit: http://www.py.cz
> _______________________________________________
> Python mailing list
> [email protected]
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python
Visit: http://www.py.cz