关于Mac使用pip3时报错DistributionNotFound: The 'pip==18.0' distribution was not found and is required

一、如何安装pip
Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具。
通过以下命令查看pip和pip3是否已安装:

pip -V  
pip3 -V  

如果提示还未安装,则可通过以下方式安装:

  1. 获取安装脚本:curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
  2. 用python2.x安装pip:sudo python get-pip.py
    用python3.x安装pip3:sudo python3 get-pip.py
  3. 查看安装的pip版本号:pip -Vpip3 -V

二、如果执行pip3 -v出现以下错误提示:

$ pip3 -V
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 573, in _build_master
    ws.require(__requires__)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 891, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 782, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.VersionConflict: (pip 19.1.1 (/usr/local/lib/python3.7/site-packages), Requirement.parse('pip==18.0'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/Cellar/python/3.7.0/bin/pip3", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3098, in <module>
    @_call_aside
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3082, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3111, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 575, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 588, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 777, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pip==18.0' distribution was not found and is required by the application

尝试执行sudo pip3 install setuptools --upgrade,仍然报此错误。
解决方法:

  1. 查看Mac下python的path路径:python -c "import django; print(django.__path__)"python3进入后import sys->sys.path,结果如下:
$ python3
Python 3.7.0 (default, Jul 23 2018, 20:22:55) 
[Clang 9.1.0 (clang-902.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python37.zip', '/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7', '/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload', '/Users/xulinzhou/Library/Python/3.7/lib/python/site-packages', '/usr/local/lib/python3.7/site-packages']
>>> 

然后打开目录open /usr/local/Cellar/python/3.7.0/bin,然后用sublime等编辑器打开pip3文件如下:

#!/usr/local/opt/python/bin/python3.7
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==18.0','console_scripts','pip3'
__requires__ = 'pip==18.0'
import re
import sys
from pkg_resources import load_entry_point

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
    sys.exit(
        load_entry_point('pip==18.0', 'console_scripts', 'pip3')()
    )

把里面的pip==18.0改成对应报错的版本号即可,我这里改成pip==19.1.1,然后,保存。
最后,再次执行pip3 -V,如下:

$ pip3 -V
pip 19.1.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

至此,问题得到解决。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值