On Wed, 2008-03-12 at 09:22 -0700, mrstephengross wrote:
> Hi all. I've got a python file called 'foo' (no extension). I want to
> be able to load it as a module, like so:
> 
>   m = __import__('foo')
> 
> However, the interpreter tells me "No module named foo". If I rename
> it foo.py, I can indeed import it. Is the extension required? Is there
> any way to override that requirement?
> 
> Thanks,
> --Steve

I recently solved a similar issue, importing from a string, with this
code:

>>> service = imp.new_module( 'ServiceModule' )
>>> compiled = compile( '''...some code here...''', '<string>', 'exec',
0, 1 )
>>> exec compiled in service.__dict__

You could probably shorten it for your needs by using execfile instead.
If it's not in the current directory, you'll probably run into some
issues with further imports not working as expected unless you set the
names/paths right.

-- 
John Krukoff <[EMAIL PROTECTED]>
Land Title Guarantee Company

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to