[python] Trable s importem

Michal Porteš portes na post.cz
Čtvrtek Květen 7 17:04:28 CEST 2020


Každý importovaný modul se vždy nejdřív kompletně vykoná, i když se z něj 
importuje třeba jen jedno jméno. Tj. provedou se všechny definice funkcí, 
tříd a případně i top-level kód, pokud tam nějaký je. U top-level kódu to 
ale nebývá žádoucí, protose používá fígl s if __name__ == '__main__'.





Tzn. ty bys na konci modulu potřeboval






if __name__ == '__main__':<br>    print("First Line")
    tri_riadky()
    print("Second Line")<br><br>

---------- Původní e-mail ----------
Od: Jaakubi <jaakubi na gmail.com>
Komu: python na py.cz
Datum: 7. 5. 2020 16:54:37
Předmět: [python] Trable s importem 
" 
Nazdar sokolíci, prosím poraďte mi:

V souboru emptyLines.py je definovaná funkce tri_riadky() - kromě jiného. V 
souboru lenRiadky.py tuto funkci importuji pro funkci nine_lines(), kterou 
na konci volám.

Když tento soubor v IDLE aktivuji (F5), vrací se mi realizace posledních 3 
příkazů z emptyLines.py a teprve potom se provede invokace nine_lines() ze 
souboru lenRiadky.py.

Jak je to možné, když jsem ze souboru emptyLines.py importoval jenom funkci 
tri_riadky?  


Srdečně zdravím, Tovim

_______________________________________________ 
Python mailing list 
python na py.cz 
http://www.py.cz/mailman/listinfo/python 

Visit: http://www.py.cz 
"
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20200507/322d40ba/attachment.htm>


Další informace o konferenci Python