Eric S. Johansson wrote: > I have a collection of packages and I want to put them under single > unifying > name. my goal is to reduce namespace pollution and make all these > packages accessible as 'import vvv.aaa'. In more detail, if I have > packages 'aaa' and 'bbb', what do I do to put those packages under > unifying name such as 'vvv'? the only way I can see to do it is to create > 'vvv' as a directory with its own __init__.py but I'm not sure that were > work right either.
Of course you could make a module vvv.py with lots of import statements import aaa import bbb ... import zzz but then all submodules are imported eagerly with import vvv And then there's the hack import sys class Importer(object): def __getattr__(self, name): module = __import__(name) # you can do anything here setattr(self, name, module) return module sys.modules["vvv"] = Importer() Peter -- http://mail.python.org/mailman/listinfo/python-list