从文件名导入函数(按名称)

时间:2013-01-27 20:06:11

标签: python import python-2.7 filenames

我正在编写一个使用trace模块的代码跟踪器。为了使用跟踪模块,我需要首先能够调用有问题的函数。

我已成功导入包含函数定义的模块,使用imp,如下所示:

mod = imp.load_source(os.path.basename(fpath).rpartition('.py')[0], fpath)

其中fpath是需要导入的模块的路径。

我不知道我需要从mod导入什么功能/类。这是在str变量中标识的(为了这个例子,我们称之为var)。

例如,fpath可以是'/Users/username/.../myPythonModule.py'var可以是'foo'

如何从foo导入mod? 我在python2.7上,如果重要的话

1 个答案:

答案 0 :(得分:2)

如果您已将模块导入为对象mod,并且var是包含所需函数名称的字符串,则可以getattr(mod, var)来获取函数(或类) ,模块中该名称的值,等等。