将一个目录添加到Python sys.path,以便每次使用Python时都包含它

目前,当试图引用一些库代码,我在我的python文件的顶部:

import sys sys.path.append('''C:\code\my-library''') from my-library import my-library 

然后,只要会话处于活动状态, my-library将成为sys.path的一部分。 如果我开始一个新的文件,我必须记得再次包含sys.path.append

我觉得这样做肯定有更好的方法。 我怎样才能使my-library可用于我的Windows机器上的每个Python脚本,而不必每次使用sys.path.append

Solutions Collecting From Web of "将一个目录添加到Python sys.path,以便每次使用Python时都包含它"

只需将此路径添加到您的PYTHONPATH环境变量。 要做到这一点,去控制面板/系统/高级/环境变量,并在“用户变量”部分,检查您是否已经有PYTHONPATH。 如果是的话,选择它并点击“编辑”,如果没有,点击“新建”添加它。

PYTHONPATH中的路径应该用“;”分隔。

要做这样的事情,你将不得不使用sitecustomize.py(或usercustomize.py)文件,你会做你的sys.path修改( 源python文档 )。

将sitecustomize.py文件创建到Python安装的\ Lib \ site-packages目录下,每次启动python解释器时都会导入它。

如果这是您在整个代码中使用的库,则应该按照这种方式进行安装。 把它打包好,然后把它安装到你的site-packages目录下,或者如果它是特定的项目,使用virtualenv并且安装在相关的virtualenvs中。

如果您是以交互方式执行此操作,则最好的做法是安装ipython并配置启动设置以包含该代码。 如果您打算将它作为从解释器运行的脚本的一部分,则同样适用,因为它可以访问您的名称空间。

另一方面,一个独立的脚本不应该包括自动。 将来,您或其他维护者将会出现,所有的代码应该是明显的,而不是依赖于特定的机器设置。 最好的做法是为新项目设置一个框架文件,其中包含所有您需要的基本功能。 这个和常用的片段一起可以解决这个问题。

你所有的代码运行脚本,将在脚本中,你不必考虑每次添加代码。