我的蟒蛇中有4个环境,如下所示。
>>> conda info --envs
base /home/gph/anaconda3
py36_torch0.4 * /home/gph/anaconda3/envs/py36_torch0.4
py37_torch1.1 /home/gph/anaconda3/envs/py37_torch1.1
python3.6 /home/gph/anaconda3/envs/python3.6
在py36_torch0.4和py37_torch1.1中,我都做了一些测试。
>>>(py36_torch0.4) gph@gph-1050Ti:~ $ whereis pip
pip: /home/gph/.local/bin/pip3.5
/home/gph/.local/bin/pip
/home/gph/anaconda3/envs/py36_torch0.4/bin/pip3.6
/home/gph/anaconda3/envs/py36_torch0.4/bin/pip
(py36_torch0.4) gph@gph-1050Ti:~ $ pip -V
pip 19.1.1 from /home/gph/.local/lib/python3.5/site-packages/pip (python 3.5)
(py37_torch1.1) gph@gph-1050Ti:~ $ whereis pip
pip: /home/gph/.local/bin/pip3.5
/home/gph/.local/bin/pip
/home/gph/anaconda3/envs/py37_torch1.1/bin/pip
(py37_torch1.1) gph@gph-1050Ti:~ $ pip -V
pip 19.1.1 from /home/gph/.local/lib/python3.5/site-packages/pip (python 3.5)
我们可以看到,每个env_name
都有envs/env_name/bin/pip
,但是pip -V
的输出始终为/home/gph/.local/lib/python3.5/site-packages/pip (python 3.5)
。
怎么了?激活特定的环境后,我应该怎么做才能正确设置点子版本?
我已尝试按照以下问题Wrong pip in conda env取消设置PYTHONPATH。但这没用。
答案 0 :(得分:1)
您已将pip
安装在conda环境之外,直接安装到主目录中。这优先于conda中安装的所有内容。
如果要从隔离的conda环境中受益,则不能在用户级别安装软件包。这将摆脱所有这些(但也许还有更多):
rm -rf /home/gph/.local
在实际删除/home/gph/.local
之前,您可能想看看它还安装了什么。
答案 1 :(得分:1)
将pip用作环境的Python解释器调用的模块。
python -m pip install some_package
,其中python
是您的环境中活跃的那个,例如/home/gph/anaconda3/envs/python3.6/bin/python
。