Python导入模块来自未安装的包

时间:2018-02-07 13:50:33

标签: python python-import git-submodules

对于我的项目,我想使用外部库,连接到git存储库作为子模块。它们位于shared-lib文件夹中,已添加到sys.path。 所有库都包含setup.py文件和带有python模块的子文件夹。如何在不安装整个软件包且不更改其结构的情况下导入该模块?

import module_name.module_name不起作用,我得到No module named module_name.module_name因为module_name目录中没有__init__.py文件。

我的项目不需要安装,因为它是另一个系统的插件。所以我只能使用python import。

1 个答案:

答案 0 :(得分:2)

您可以使用imp

import imp

foo = imp.load_source('module1.foo', 'module1/module1/foo.py')
bar = imp.load_source('module2.bar', 'module2/module2/bar.py')

print(foo)
print(bar)

输出:

<module 'module1.foo' from 'module1/module1/foo.py'>
<module 'module2.bar' from 'module2/module2/bar.py'>