[python] from modul import *

ViNiL vinil na zagamma.cz
Pátek Červenec 5 08:14:10 CEST 2002


On Fri, Jul 05, 2002 at 02:44:52AM +0200, Petr Vanek wrote:
> zdravim,
> 
> ve vsech howto se nedoporucuje importovat * from modul, nebot
> to promicha karty jmen promenny v namespace (pekne receno ;-). navic se
> mi zda (a i jsem to nekde cetl), ze to zpomali start programu, nebot se
> nacte i to, co neni potrebne.
> 
> pouzivam wxPython GUI a zkusil jsem namisto from wxPython.wx import * 
> pouzit from wxPython.wx import wx, ale casove to vychazi na stejno (mam
> slaby pocitac, tak vim, o cem mluvim - zhruba o osmi vterinach
> natahovani modulu wxPython). problemy se jmeny  promennych v v
> namespaces mne tolik netrapi, ma pro mne smysl se trapit se specifikaci
> konkretnich importovanych veci, kdyz mi to nic neprinasi?

Cele to zalezi na tom, jak je ten modul napsany.

Vubec nejlepsi je v importu 'from' nepouzivat, ale uznavam, ze nekdy by to byl
vopruz.

To, ze importovani konkretnich veci ti nic neprinasi, neni pravda. Prave onen
name clash zjistis obvykle az po dni hledani :-) Krome toho je to vyrazne
hezci.

Ta rychlost se neprojevi anitak pri samotnem importu (predpokladam, ze ten
modul mas zbytecompilovany), jako pri behu tveho programu. Je logicke, ze cim
"bohatsi" namespace, tim vic rezie navic (v podstate pri kazdem hledani (t.j.
pouziti) napr. promenne). A vzhledem k tomu, ze onim "from blabla import *"
importujes take importovane moduly, neni to jaksi ono...

Osobne to resim tak, ze dokud na programu vyrazne pracuju, nechavam tam *, a
kdyz delam "release", tak je nahradim konkretnimi nazvy. ...tak me napada, ze
by to mohl udelat nejaky skript -- nevite nekdo, zda neco takoveho existuje?


-- 
ViNiL the GNU hippie

/earth is 98% full ... please delete anyone you can.


Další informace o konferenci Python