如何在conda env中重用全局站点包

she*_*per 8 python virtualenv anaconda

我有一个名为的项目ABC,我有一个conda env只是为了它在折叠~/anaconda/envs/ABC,我相信它是一个venv,我想使用全球网站包中的一些特定的包.

对于普通的Python安装,可以从venv文件夹中删除no-global-site-package.txt,或者通过设置venv来使用global-site-packages,但我没有找到任何等效方法来执行此操作在Anaconda.在线文档也没有答案.

如何为Anaconda做这个?

jai*_*ash 5

你不能在 conda 中显式地执行此操作,其中的原则是环境是完全独立的。

但当前的默认行为conda是允许从环境内查看所有全局用户站点包,如本问题中所述。因此,默认行为将允许您按照自己的意愿行事,但无法根据要求仅允许“某些特定”全局包。

这种行为导致了一两个问题。为了避免它, export PYTHONNOUSERSITE=1之前source activate <your env>。请注意,开发人员计划更改PYTHONNOUSERSITE=14.4.0 中设置的默认行为(根据链接的第二个问题)。


NMn*_*ntn 4

如果现在有人回到这里,对于 conda 4.7.12,在调用export PYTHONNOUSERSITE=True之前输入conda activate成功地将 conda 环境与全局/用户站点包隔离开来。

另一方面,输入export PYTHONNOUSERSITE=0允许 conda 环境重新引入全局/用户站点包。

注意:这代替了之前建议的export PYTHONNOUSERSITE=1。