在conda环境中pip / pipenv有多隔离?

时间:2019-05-11 22:04:19

标签: python pip conda pipenv

期望Conda环境为pip / pipenv使用提供完全的隔离和控制是正确的吗?

假设我创建并激活一个Conda环境并将其命名为“ pip-pip”,然后继续执行我的使用pipenv的项目,而完全忽略了激活Conda环境时发生的事实。

  1. 该pipenv项目的所有痕迹都将包含在“ pip-pip”中,还是有可能溢出?
  2. 从“ pip-pip”内部使用pip / pipenv的事实是否会对体验产生负面影响?

1 个答案:

答案 0 :(得分:0)

只要正确配置了shell和环境变量,这种安排就可以正常工作。

如果在未激活“ Pip-pip” Conda环境的情况下尝试激活Pipenv,则可能会出现破损或其他不可预测的行为,因为Pipenv是使用一个Python安装的,并且正在使用另一个Python运行。破损的程度取决于Pipenv的实现细节。

作为一般规则,只要设计合理,并且按照原始安装的顺序激活环境链,就应该可以任意嵌套此类“环境”程序。这是否会对您的体验产生负面影响,取决于您对烦恼的承受能力。

但是,Pipenv默认情况下会在全局位置创建虚拟环境。我不确定该位置是什么,但最终可能会安装依赖于不同Python版本的Pipenv环境。就您的问题而言,我认为这可能构成“溢出”。