iu2 <israelu <at> elbit.co.il> writes: > > Hi, > > Having a file called funcs.py, I would like to read it into a string, > and then import from that string. > That is instead of importing from the fie system, I wonder if it's > possible to eval the text in the string and treat it as a module. > > For example > > with file('funcs.py') as f: txt = r.read() > string_import(txt, 'funcs') # is string_import possible? > > to have now a module called funcs with the functions defined in > funcs.py.
You can do something like this: import types import sys mymodule = types.ModuleType("mymodule", "Optional Doc-String") with file('funcs.py') as f: txt = f.read() exec txt in globals(), mymodule.__dict__ sys.modules['mymodule'] = mymodule Note that you shouldn't exec untrusted code. You might also look at the __import__ funciton, which can import by python path. You might also look at the imp module. Matt -- http://mail.python.org/mailman/listinfo/python-list