从文件夹python导入模块动态

时间:2013-04-03 15:10:24

标签: python import

我已经阅读了有关在python中动态导入模块的其他帖子。他们工作!问题是当我从特定文件夹导入模块时。 如果我有主python代码和模块在同一个文件夹中:

main.py

module.py

如果我这样做:

var = "module"
module = __import__(var)

效果很好。但我的模块位于名为“modules”

的特定文件夹中

main.py

模块\ module.py

如果我这样做:

var = "a"
module = __import__("modules\\"+var)

它不起作用。 我知道我非常接近解决方案,但我无法得到它。

感谢您的帮助

1 个答案:

答案 0 :(得分:3)

假设模块确实是python包而var是您的模块名称,则将目录与点分开。

var = "module" 
module = __import__("modules.{0}".format(var), globals(), locals(), [], -1)

您可以查看文档:

import documentation

您可以在modules文件夹中创建__init__.py文件。