[Python-Dev] Import by filename with __import__ ?

Christian Heimes lists at cheimes.de
Wed Jan 9 06:09:05 CET 2008


Today I stumbled about an unknown and undocumented (?) feature. At least
it's not documented in our docs. __import__ can import a module by file
name:

>>> open("/tmp/example.py", "w").write("test = 23\n")
>>> mod = __import__("/tmp/example")
>>> mod
<module '/tmp/example' from '/tmp/example.py'>
>>> mod.__name__
'/tmp/example'
>>> mod.__file__
'/tmp/example.py'
>>> mod.test
23

Is it just a coincidence? Is it a desired feature? Why isn't it documented?

Christian



More information about the Python-Dev mailing list