1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| #!/usr/bin/env python
# -*- coding: UTF-8 -*-
#
#
import imp
import sys
import __builtin__
import os.path
toolsdic={'newvar': '/home/patrice/Bureau/code/newvar'}
def import_replacement(name, globals=None, locals=None, fromlist=None):
if name in sys.modules:
module = sys.modules[name]
elif name == 'tools':
if not fromlist:
# A faire
sys.exit(1)
elif '*' in fromlist:
# revoir
for elem in toolsdic:
print 'import de :', name
modulepath, modulename = os.path.split(toolsdic[elem])
file, filename, data = imp.find_module(modulename, [modulepath])
module = imp.load_module(elem, file, filename, data)
else:
#for elem in fromlist:
# A faire
sys.exit(1)
else:
print 'import de :', name
module = real_import(name)
return module
real_import = __builtin__.__import__
__builtin__.__import__ = import_replacement
#import Tkinter
#if 'Tkinter' in sys.modules: print "dans sys.modules", sys.modules['Tkinter']
#import newvar
# Variantes d'import
from tools import *
#import tools
print sys.modules['newvar']
#from tools import newvar
#if 'tools' in sys.modules: print 'ok'
#print sys.modules['tools']
from re import *
if 're' in sys.modules: print 'ok'
print sys.modules['re'] |
Partager