我在使用 pip 时遇到以下错误:“pip 因 request-Modul 的 ImportError 而停止“
我在论坛上看到一个简单的解决方案就是apt-get 删除 pip然后做easy_install pip。我这样做了,它确实让 pip 重新开始工作。
但是,我后来读到使用 easy_install 不是一个好主意,可能会破坏 apt 的包管理。所以我的问题是,如何“撤消”easy_install 所做的一切,并让 apt 再次正确管理 pip?
答案1
你需要做的:
重新安装该python-pip
包apt
,然后将其本身或损坏时升级pip
到最新版本。pip
easy_install
sudo apt-get install python-pip
sudo pip install --upgrade pip || sudo easy_install --upgrade pip
为什么要这么做:
apt
仅安装它在您已安装的存储库中找到的软件包,但官方存储库中的 python 软件包非常过时!但是,您将来可能会安装的一些软件包可能会列为python-pip
依赖项,并且需要安装该软件包。如果您在未安装的情况下安装它,它们将无法识别它apt
。此外,该man
命令不起作用,pip
因为只apt
为其创建了一个手册页,easy_install
而不是。
easy_install
但是pip
,它们不会从任何存储库中获取其包,而是从 PyPI (Python 包索引) 中获取,它始终保存最新的可用版本。
因此,如果您想要当前版本,我的建议是使用pip
而不是apt
来更新 Python 包。easy_install
是 的祖先pip
,通常应避免使用 并用 代替pip
,但只要它坏了,您就必须使用它。您也可以执行sudo pip install --upgrade pip
来获取最新pip
版本,而无需easy_install
。
如果您没有pip
安装软件包,则只需另外安装。在使用或升级之前apt
,我没有删除python-pip
它,它也可以工作。由于在和/中使用优先级较高的目录安装旧版本,因此,如果安装了多个版本,则在不提供明确目录的情况下简单调用将始终运行较新的版本。apt
pip
easy_install
apt
pip
/usr/bin
pip
easy_install
/usr/local/bin
pip