KvS <[EMAIL PROTECTED]> wrote: > > There's no reason not to just "import wx" if you want that. > > Yes, that's clear. But if you would make some huge application that has > a large number of nested modules, each importing the former one, then > avoiding the use of "from ... import *" would mean that you have to use > long references like foo1.foo2.... to get to the lowest modules plus
Not at all -- you may perfectly well "import a.b.c.d as e" and use e as the reference throughout the importing module. But the point is, modules should be MODULAR (duh) -- if I 'import x' I should NOT rely on what x itself imports (and so on transitively), just on what x ``exports'', so to speak, at its TOP level. The Law of Demeter in its simplified form "if you have more than one dot in your reference you're doing things wrong" applies. In fact, the many-dots form of module naming is intended for nested PACKAGES, *NOT* for "modules which import each other". > that you'd have to check each module for imports outside this tree. Why would you have to check any module for such "outside imports"? I don't see the need for any checks. If you just simply forget the very _existence_ of "from X import *", your Python code can only grow better as a result. I earnestly hope it disappears come Python 3.0 time... Alex -- http://mail.python.org/mailman/listinfo/python-list