[Python-Dev] advice needed: best approach to enabling "metamodules"?

Greg Ewing greg.ewing at canterbury.ac.nz
Sat Nov 29 23:07:57 CET 2014


Nathaniel Smith wrote:
> So pkgname/__new__.py might look like:
> 
>     import sys
>     from pkgname._metamodule import MyModuleSubtype
>     sys.modules[__name__] = MyModuleSubtype(__name__, docstring)
> 
> To start with, the 'from
> pkgname._metamodule ...' line is an infinite loop,

Why does MyModuleSubtype have to be imported from pkgname?
It would make more sense for it to be defined directly in
__new__.py, wouldn't it? Isn't the purpose of separating
stuff out into __new__.py precisely to avoid circularities
like that?

-- 
Greg


More information about the Python-Dev mailing list