thebjorn wrote:
I'm storing the path to functions in a database and now I'd like to
get a reference so I can execute them.
I looked briefly at the imp module and got very confused... Currently
I'm doing this:
def import_object(path):
module, obj = path.rsplit('.', 1)
exec "from rootpkg.%s import %s as fn" % (module, obj)
return fn
function = import_object('mypackage.mymodule.myfunction')
this is happening in a trusted environment, so I'm not worried about
malicious code.
Are there more elegant ways of doing this (ie. without exec)?
Yes. Look at the __import__ builtin function, and if that's not enough
functionality, look at the module names imp, which provides
documentation starting with this bit:
DESCRIPTION
This module provides the components needed to build your own
__import__ function.
Both are available in Python2.x and Python3.x
Gary Herron
-- bjorn
--
http://mail.python.org/mailman/listinfo/python-list