如何全局导入一些Python模块集?

如何全局导入一些Python模块集?,python,python-import,python-module,Python,Python Import,Python Module,在我的特定设置中,我有一组python模块,其中包括许多其他模块中使用的辅助函数。我把它们放在一个LIBS文件夹中,在同一个路径级别上还有其他文件夹,其中包括通过使用这些LIBS模块的帮助执行某些任务的其他模块。目前,我对所有模块执行此操作,以导入LIBS模块 import sys sys.path.insert(0, '../LIBS') import lib_module1 import lib_module2 .... 随着项目越来越大,这开始成为令人头疼的问题。我需要为每个新模块的

在我的特定设置中,我有一组python模块,其中包括许多其他模块中使用的辅助函数。我把它们放在一个LIBS文件夹中,在同一个路径级别上还有其他文件夹,其中包括通过使用这些LIBS模块的帮助执行某些任务的其他模块。目前,我对所有模块执行此操作,以导入LIBS模块

import sys
sys.path.insert(0, '../LIBS')

import lib_module1
import lib_module2
.... 
随着项目越来越大,这开始成为令人头疼的问题。我需要为每个新模块的这些辅助LIBS模块写下一大组import语句

是否有任何方法可以自动为与LIBS文件夹位于同一路径level的文件夹中的其他模块导入所有这些LIBS模块?

为此,您可以使用

 __init__.py
请参考和。

有关此信息,您可以使用

 __init__.py

请参阅和。

确实有!开始将LIBS模块视为真正的模块或软件包,并像其他模块一样安装到系统中

这意味着您必须编写setup.py脚本来安装代码。通常,这是在您的开发目录中完成的,然后您的模块安装有:

$ sudo python setup.py install
这将在系统中存储Python库的任何位置的site packages子目录下安装模块

我建议从复制其他人的working setup.py和支持文件开始,然后修改以适合您的软件包。例如,这里是


公平警告:这是一个相当大的步骤。您不仅可以学习在本地部署模块,还可以根据需要在上发布模块。迁移到真实软件包的步骤将鼓励您编写越来越多的标准文档、开发和运行更多的测试、采用、更清楚地识别和定义代码依赖性,以及采取许多其他专业化步骤。这些都会带来更好、更可靠、更可移植、更易于部署的代码,但如果我不承认学习曲线有时会很陡峭,那我就是在撒谎。

确实有!开始将LIBS模块视为真正的模块或软件包,并像其他模块一样安装到系统中

这意味着您必须编写setup.py脚本来安装代码。通常,这是在您的开发目录中完成的,然后您的模块安装有:

$ sudo python setup.py install
这将在系统中存储Python库的任何位置的site packages子目录下安装模块

我建议从复制其他人的working setup.py和支持文件开始,然后修改以适合您的软件包。例如,这里是


公平警告:这是一个相当大的步骤。您不仅可以学习在本地部署模块,还可以根据需要在上发布模块。迁移到真实软件包的步骤将鼓励您编写越来越多的标准文档、开发和运行更多的测试、采用、更清楚地识别和定义代码依赖性,以及采取许多其他专业化步骤。这些都在更好、更可靠、更可移植、更易于部署的代码中产生了回报,但如果我不承认学习曲线有时会很陡峭,那我就是在撒谎。

可能的重复我不认为这是重复,因为它涉及到一个额外的步骤。答案可能是基于这个问题,但这个问题并没有假设从init.py开始,因为我刚刚学习了这个问题。可能的重复我不认为这是重复的,因为它涉及到一个额外的步骤。答案可能是基于这个问题,但是这个问题并没有假设从init.py开始,因为我刚刚学习了这个问题。不,不是必需的。您只需导入_init_uu.py.Nope中所有必需的模块即可,这不是必需的。您只需在_init_upy.py中导入所有必需的模块即可。