function to do dynamic import?
bambam
david at asdf.asdf
Tue Sep 11 01:52:05 EDT 2007
import works in the main section of the module, but does
not work as I hoped when run inside a function.
That is, the modules import correctly, but are not visible to
the enclosing (global) scope.
Questions:
(1) Where can I read an explanation of this?
(2) Is there a work around?
BTW, sys.modules("filename") shows that the module is
loaded, I just don't know how to use it when loaded that
way. Also, if I import again at the global scope, the module
name becomes available.
Steve.
---
>>> def gim():
... exec "import gamel"
...
>>> gim()
>>> sys.modules["gamel"]
<module 'gamel' from 'c:\gamel.pyc'>
>>>gamel
NameError: name 'gamel' is not defined
>>>exec "import gamel"
>>>gamel
<module 'gamel' from 'c:\gamel.pyc'>
More information about the Python-list
mailing list