<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Můžeš použít funkci __import__ asi takto:<br><br>>>> __import__("math").factorial(9)<br>362880<br><br>Nevím, jestli to je to, cos chtěl, ale v zásadě mi to přijde podobné.<br><br><br><br><div>> From: petr.messner@gmail.com<br>> Date: Wed, 25 May 2016 11:18:45 +0200<br>> To: python@py.cz<br>> Subject: Re: [python] Plně kvalifikovaný název místo importu?<br>> <br>> Ahoj,<br>> <br>> tohle bohužel takhle nejde. <br>> <br>> 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. <br>> <br>> 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.<br>> <br>> 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.<br>> <br>> Petr Messner<br>> <br>> 25. 5. 2016 v 10:17, Libor Jelínek <ljelinek@virtage.com>:<br>> <br>> > Ahoj,<br>> > existuje nějaký způsob např. zavolání funkce modulu plně kvalifikovaným názvem aniž by ho bylo třeba nutné nejprv importovat?<br>> > <br>> > Místo<br>> > <br>> >   import tempfile<br>> >   tempfile.gettempdir()<br>> > <br>> > jen něco jako<br>> > <br>> >   tempfile.gettempdir()<br>> > <br>> > ?<br>> > _______________________________________________<br>> > Python mailing list<br>> > python@py.cz<br>> > http://www.py.cz/mailman/listinfo/python<br>> > <br>> > Visit: http://www.py.cz<br>> _______________________________________________<br>> Python mailing list<br>> python@py.cz<br>> http://www.py.cz/mailman/listinfo/python<br>> <br>> Visit: http://www.py.cz<br></div>                                           </div></body>
</html>