一尘不染

Anaconda:永久包含外部软件包(例如PYTHONPATH中的软件包)

python

我知道如何使用Anaconda安装软件包,conda install以及如何安装PyPi上的软件包,如手册中所述。

但是,如何才能将软件包/文件夹永久包含PYTHONPATH在Anaconda环境中,以便可以导入当前正在使用的代码,并且在重新启动后仍然可用?

我当前的方法是使用sys

import sys
sys.path.append(r'/path/to/my/package')

这不是很方便。

有什么提示吗?

提前致谢!


阅读 148

收藏
2020-12-20

共1个答案

一尘不染

我在Anaconda论坛中找到了两个问题的答案:

1.)将模块放入站点包中,即$HOME/path/to/anaconda/lib/pythonX.X/site- packages始终位于的目录中sys.path。这也应该通过创建符号链接来起作用。

2.)将.pth文件添加到目录$HOME/path/to/anaconda/lib/pythonX.X/site- packages。可以将其命名为任何名称(只需以结尾即可.pth)。一个.pth文件只是一个换行分隔的目录将被添加到在Python启动您的路径的完整路径名的列表。

或者
,如果您只想链接到特定的conda环境,则将.pth文件添加到~/anaconda3/envs/{NAME_OF_ENVIRONMENT}/lib/pythonX.X/site- packages/

两者都很简单,我选择了第二个选项,因为它更灵活。

***更新:

3.)使用conda开发,conda-develop /path/to/module/添加.pth如选项2)中所述的创建文件的模块。

4.)在软件包的文件夹中创建setup.py并使用它进行安装,pip install -e /path/to/package从我的角度来看,这是最干净的选项,因为您还可以使用查看所有安装pip list。请注意,该选项-e允许编辑程序包代码。有关更多信息,请参见此处

不管怎么说,还是要谢谢你!

2020-12-20