在我的特定设置中,我有一组python模块,其中包含许多其他模块中使用的辅助功能。我把它们放到一个LIBS文件夹中,我在同一路径级别有其他文件夹,包括使用这些LIBS模块帮助完成某些工作的其他模块。目前,我为所有导入LIBS模块的模块执行此操作。
import sys
sys.path.insert(0, '../LIBS')
import lib_module1
import lib_module2
....
随着项目变大,这开始变得颈部疼痛。我需要为每个新模块为这些辅助LIBS模块写下大量的import语句。
有没有办法自动导入所有这些LIBS模块用于生活在同一路径文件夹中的LIBS文件夹中的其他模块?
答案 0 :(得分:4)
答案 1 :(得分:0)
这意味着您必须编写setup.py
脚本来安装代码。通常这是在您的开发目录中完成的,然后您的模块安装时使用:
$ sudo python setup.py install
这会将您的模块安装在系统上存储Python库的site-packages
子目录下。
我建议首先复制其他人的工作setup.py
和支持文件,然后修改以适合您的包。例如,这是my quoter module。
公平警告:这是一个非常重要的一步。您不仅可以学习在本地部署模块,还可以根据需要在PyPI上发布模块。迁移到真正的包的步骤将鼓励您编写越来越多的标准文档,开发和运行更多测试,采用more rigorous version specifications,以更清楚地识别和定义代码依赖性,并采取许多其他“专业化”步骤。这些都会以更好,更可靠,更便携,更容易部署的代码来支付红利 - 但如果我不承认学习曲线有时会很陡峭,我就会撒谎。