python - 'pip==9.0.1' 分布未找到,应用程序需要

标签 python error-handling installation pip

我想我的 pip 坏了。我已经尝试了从强制重新安装到更新所有内容的所有方法,但似乎没有任何效果。

当我执行 pip2 -v 时,我得到以下信息:

Traceback (most recent call last):
  File "/usr/local/bin/pip2", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3144, in <module>
    @_call_aside
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3128, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3157, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 666, in _build_master
    ws.require(__requires__)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 984, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 870, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pip==9.0.1' distribution was not found and is required by the application

当我执行 pip -v 时,我得到以下信息:

Traceback (most recent call last):
  File "/bin/pip", line 7, in <module>
    from pip._internal import main
ImportError: No module named pip._internal

仅供引用:我在 Mac OSX 上使用 Python 2.7.14

请帮忙!!

最佳答案

由于您使用的是 macOS,因此您的计算机已经安装了由 Apple 预装的 Python 2.7。如果您使用的是 macOS 10.13,则为 2.7.10;旧版本当然有旧版本。

与此同时,您已经安装了 Python 2.7.14。您没有告诉我们如何操作——python.org 安装程序、Anaconda、Homebrew 等等——但没关系。

问题是 Apple Python 2.7.10 仍然是您的“主要”2.7,所以您以某种方式结束了 pip 9.0.1 为您的 2.7.14 安装了它的软件包,但认为它应该与 Apple 2.7.10 一起运行。这就是它查找 /usr/local/lib/python2.7/site-packages 的原因,这是 Apple 2.7.10 的站 pip 包,不适用于您的 2.7.14。你要么没有pip适用于 Apple 2.7.10 或更旧的版本。因此错误。


处理多个 Python 安装令人头疼——尤其是同一版本的多个安装——是 Python Packaging User Guide 的原因建议您:

  • 使用python -m pip运行 pip .
  • 尽可能使用虚拟环境。

我不知道您通常如何确保您运行的是 2.7.14 而不是 Apple 的 2.7.10,但是无论您运行什么命令,如果您对 -m pip 执行相同的操作,保证使用您的 2.7.14 而不是 Apple 的 2.7.10。例如,如果您通常键入 python2 , 使用 python2 -m pip而不是 pip2 .

同时,如果您激活虚拟环境,pythonpip (以及其他类似 2to3 的版本)将成为与该环境配套的版本,无论您碰巧安装了什么以及您的整体系统设置有多困惑。

关于python - 'pip==9.0.1' 分布未找到,应用程序需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51392098/

相关文章:

javascript - JQuery Ajax 调用在 If 语句中不起作用

r - 使用包 vegdist 在 R 中执行 NMDS 时出错

java - 全部打包! Perl, python, java 为天真的用户(在 windows 中)

python - 如何在 python 中加快这个图像蒙版创建过程?

python - Docker 容器/图像正在运行但没有端口号

python - 从基于列表字段的文件中获取行计数 python 3

php - 银条 3 : Can I set a custom error page in silverstripe for certain page types?

php - 如何使用MySQLi处理失败?

r - 无法在 Ubuntu 18.04 LTS 上安装 rstanarm

npm - 无法安装 WebPack CLI