Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > cz.comp.lang.python > #3082 > unrolled thread

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

Started byLibor Jelínek <ljelinek@virtage.com>
First post2016-05-25 01:17 -0700
Last post2016-06-01 18:32 +0000
Articles 4 — 3 participants

Back to article view | Back to cz.comp.lang.python


Contents

  Plně kvalifikovaný název místo importu? Libor Jelínek <ljelinek@virtage.com> - 2016-05-25 01:17 -0700
    Re: [python] Plně kvalifikovaný název místo importu? Libor Jelínek <ljelinek@virtage.com> - 2016-05-25 01:28 -0700
    Re: [python] Plně kvalifikovaný název místo importu? Petr Messner <petr.messner@gmail.com> - 2016-05-25 11:18 +0200
    Re: Plně kvalifikovaný název místo importu? garabik-news-2005-05@kassiopeia.juls.savba.sk - 2016-06-01 18:32 +0000

#3082 — Plně kvalifikovaný název místo importu?

FromLibor Jelínek <ljelinek@virtage.com>
Date2016-05-25 01:17 -0700
SubjectPlně kvalifikovaný název místo importu?
Message-ID<52752459-7efc-44ab-8a2b-2e50fd9d869b@googlegroups.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()

?

[toc] | [next] | [standalone]


#3083 — Re: [python] Plně kvalifikovaný název místo importu?

FromLibor Jelínek <ljelinek@virtage.com>
Date2016-05-25 01:28 -0700
SubjectRe: [python] Plně kvalifikovaný název místo importu?
Message-ID<b1ac1cca-e357-4c04-ae6b-6cda51e13121@googlegroups.com>
In reply to#3082
Motivace je jen lenost a taky by mi to přišlo přehlednější uvést FQN, pokud importované "něco" použiju jen jednou.

[toc] | [prev] | [next] | [standalone]


#3084 — Re: [python] Plně kvalifikovaný název místo importu?

FromPetr Messner <petr.messner@gmail.com>
Date2016-05-25 11:18 +0200
SubjectRe: [python] Plně kvalifikovaný název místo importu?
Message-ID<mailman.69.1464167930.13201.python@py.cz>
In reply to#3082
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@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@py.cz
> http://www.py.cz/mailman/listinfo/python
> 
> Visit: http://www.py.cz

--- news://freenews.netfront.net/ - complaints: news@netfront.net ---

[toc] | [prev] | [next] | [standalone]


#3085

Fromgarabik-news-2005-05@kassiopeia.juls.savba.sk
Date2016-06-01 18:32 +0000
Message-ID<nin9nb$agm$1@gioia.aioe.org>
In reply to#3082
Libor Jelínek <ljelinek@virtage.com> wrote:
> 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?
>

http://peak.telecommunity.com/DevCenter/Importing

priklad:
lazyModule('tempfile.gettempdir')()

> Místo
> 
>    import tempfile
>    tempfile.gettempdir()
> 
> jen něco jako
> 
>    tempfile.gettempdir()
> 
> ?

-- 
 -----------------------------------------------------------
| Radovan Garabík http://kassiopeia.juls.savba.sk/~garabik/ |
| __..--^^^--..__    garabik @ kassiopeia.juls.savba.sk     |
 -----------------------------------------------------------
Antivirus alert: file .signature infected by signature virus.
Hi! I'm a signature virus! Copy me into your signature file to help me spread!

[toc] | [prev] | [standalone]


Back to top | Article view | cz.comp.lang.python


csiph-web