importing / loading a module / class dynamically

hg hg at nospam.org
Fri Jan 5 04:45:57 EST 2007


hg wrote:

> Hi,
> 
> I have the following problem.
> 
> I find in a directory hierarchy some files following a certain sets of
> rules:
> 
> .../.../../plugin/name1/name1.py
> ....
> .../.../../plugin/namen/namen.py
> 
> each file will in turn have a class with the same name as the filename
> (minus .py)
> 
> 
> I fetch those names in a list of string and want to import the files /
> instantiate the classes.
> 
> 
> I block at the beginning and tried this (test.py is a real file)
>>>> s = 'test.py'
>>>> eval ('import ' + s)
> 
> and get
> 
> Traceback (most recent call last):
>   File "<pyshell#1>", line 1, in -toplevel-
>     eval ('import ' + s)
>   File "<string>", line 1
>     import test.py
> 
> Any clue ?
> 
> Thanks
> 
> hg


OK, from http://mail.python.org/pipermail/python-list/2004-July/272081.html,
I need to use exec and not eval

hg




More information about the Python-list mailing list