在哪里放置我需要的几个项目的python模块?



假设我有一个名为custom_colors.py的python模块,其中我创建了在不同工作目录中的多个项目中使用的一些变量。所以我想知道如何使用此类帮助程序文件的最佳实践是什么?

将它们复制到每个项目的文件夹中?

到目前为止,我想为所有这样的帮助程序文件创建一个文件夹,并在需要时导入

import os
# change workding directory to helper files folder and load own modules
os.chdir(helper_files_path)
import utils.custom_colors as cc

但是对于这种方法,我总是需要先更改工作目录。

你们是如何处理这些事情的?

将它们保存在中心位置,但不让脚本负责查找该位置。相反,您可以使用PYTHONPATH告诉解释器它在哪里。

import os
import utils.customer_colors as cc
...

如果模块的路径类似于/path/to/lib/utils.py,则使用

PYTHONPATH=/path/to/lib python myscript.py

您可以将此更改添加到您的环境中,以便 Python 在搜索模块时始终查找/path/to/lib

更进一步,打包您的库,以便您可以使用python setup.py installpip install mylib进行安装,然后为每个项目创建一个虚拟环境并在虚拟环境中安装mylib

最新更新