【问题标题】:python and pip does not match in anaconda environmentpython和pip在anaconda环境中不匹配
【发布时间】:2020-04-21 06:11:06
【问题描述】:

如题所示:

which python

/home/ubuntu/anaconda3/envs/${PROJECT}/bin/python

which pip

/home/ubuntu/.local/bin/pip

这将导致pip install *package 失败。包将被安装到不同的环境中,例如系统环境而不是${PROJECT} 环境。

我的venv里面的${PATH}是这样的:

/home/ubuntu/.local/bin:
/home/ubuntu/anaconda3/envs/efficientdet/bin:
/home/ubuntu/anaconda3/condabin:
/usr/local/cuda/bin:
/usr/local/sbin:
/usr/local/bin:
/usr/sbin:
/usr/bin:
/sbin:
/bin:
/usr/games:
/usr/local/games:
/snap/bin

我可以使用/home/ubuntu/anaconda3/envs/${PROJECT}/bin/pip,但这太麻烦了。有什么帮助吗?

【问题讨论】:

  • 你的PATH 环境变量在 venv 中是什么样子的。你有为 pip 设置的alias 吗?
  • 我现在添加了PATH
  • 看起来很奇怪 /home/ubuntu/.local/bin 位于顶部,即使您的环境已激活。您是否有机会激活.bashrc 中的环境?你在哪里添加/home/ubuntu/.local/bin 条目?
  • 嗯,你是对的。 AFAIK,我没有手动将/home/ubuntu/.local/bin 添加到.bashrc。在我重新安装pip 之前,我确实在~/.local/bin 目录中有一个pip。但是,在我在 venv 中重新安装 pip 后,它被删除了。
  • 可以分享环境的内容吗?

标签: pip anaconda conda


【解决方案1】:

问题已解决,但问题的根本原因仍不清楚。

*in your virenv*: python -m pip install --force-reinstall pip

然后停用您的 virenv 并重新激活它将解决此问题。任何人都可以对这个问题有进一步的了解。

【讨论】:

  • 这不是一个很好的解决方法。使用conda 创建环境时应安装pip。现在您正在使用pip 删除并重新安装它,这是一个麻烦的秘诀。
  • condapip安装的包有什么区别,介意再解释一下吗?我一直打算使用pip
  • @Sherk 小心!除非绝对必要,否则不要将 pip 与 Conda 一起使用,例如参见 anaconda.com/blog/using-pip-in-a-conda-environment
猜你喜欢
  • 2021-10-17
  • 2021-02-11
  • 2014-02-23
  • 1970-01-01
  • 2020-12-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-24
  • 1970-01-01
相关资源
最近更新 更多