Nicolas Fleury wrote:
import cppmymodule

would be equivalent to:

if sys.version == "2.4":
    import cppmymodule24 as cppmymodule
elif sys.version == "2.3":
    import cppmymodule23 as cppmymodule

for all modules under the package and all modules with names beginning with cpp (or another way to identify them).

Since all my imports are absolute, my code looks more like:

import root.subpackage.cppmymodule

So I guess, I can add this in root/__init__.py and everything would be fine:

def myimport(name, globals=None, locals=None, fromlist=None,
             __import__=__import__):
    names = name.split('.')
    if names[0] == 'root' and names[-1][0:3] == 'cpp':
        name += '%s%s' % sys.version_info[0:2]
    return __import__(name, globals, locals, fromlist)

__builtins__['__import__'] = myimport

It seems to work, is that right?

Thx and regards,
Nicolas
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to