[python] Plně kvalifikovaný název místo importu?

Petr Messner petr.messner na gmail.com
Středa Květen 25 11:18:45 CEST 2016


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 <ljelinek na virtage.com>:

> 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
> python na py.cz
> http://www.py.cz/mailman/listinfo/python
> 
> Visit: http://www.py.cz


Další informace o konferenci Python