问题描述
我在我的ubuntu 16上有最新版本的pip 8.1.1。但我无法通过pip安装任何模块,因为我一直收到此错误。
File "/usr/local/bin/pip", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2927, in <module>
@_call_aside
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2913, in _call_aside
f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2940, in _initialize_master_working_set
working_set = WorkingSet._build_master()
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 635, in _build_master
ws.require(__requires__)
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 943, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 829, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pip==7.1.0' distribution was not found and is required by the application
我找到了类似的link,但没有帮助。
最佳解决办法
我用命令修复了这个:
easy_install pip
次佳解决办法
我有这个问题很长一段时间,直到我最近发现我的’pip’文件(/usr /local /bin /pip)试图加载错误版本的pip。我相信你的机器上也正确安装了8.1.1,可以尝试一下。
-
打开/usr /local /bin /pip文件。对我来说,它看起来像:
__requires__ = 'pip==9.0.1' import sys from pkg_resources import load_entry_point if __name__ == '__main__': sys.exit( load_entry_point('pip==9.0.1', 'console_scripts', 'pip')() )
-
将第1行和最后一行中的’pip==9.0.1’更改为您在系统上安装的任何版本,例如,您需要将7.1.0更改为8.1.1。
基本上/usr /local /bin /pip是用于加载pip required version模块的入口文件。不知何故,当我升级/更改pip安装时,这个文件没有得到更新,所以我每次都手动更新它。
第三种解决办法
我没有设法通过使用easy_install pip
或更新pip配置文件/usr/local/bin/pip
来使其工作。
相反,我删除了pip并安装了conf文件所需的分发:
Uninstalling pip:
$ sudo apt purge python-pip
或$ sudo yum remove python-pip
Reinstalling required distribution of pip (change the distribution accordingly):
$ sudo easy_install pip==9.0.3
第四种办法
删除.local下的所有pip /pip3内容,包括包。
sudo apt-get purge python-pip python3-pip
现在从本地删除所有pip3文件
sudo rm -rf /usr/local/bin/pip3
你可以检查哪个pip安装其他明智的执行下面一个删除所有(不用担心)
sudo rm -rf /usr/local/bin/pip3.*
使用pip和/或pip3,重新安装所需的Python包。
sudo apt-get install python-pip python3-pip
第五种办法
从18.0升级到18.1后,我得到了同样的错误。重新安装程序(不使用pip本身)对我有用:
$ curl https://bootstrap.pypa.io/get-pip.py > get-pip.py
$ sudo python get-pip.py
第六种办法
只需重新链接即可解决问题。找到哪个python:ls -l /usr/local/bin/python
ln -sf /usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/bin/pip /usr/local/bin/pip
或者重新安装pip:https://pip.pypa.io/en/stable/installing/
第七种办法
如果您有2个版本的pip,例如/usr/lib/pip
和/usr/local/lib/pip
属于python 2.6和2.7。你可以删除/usr/lib/pip
并建立一个链接pip => /usr /local /lib /pip。