我认为我的点子坏了。我已经尝试过从强制重新安装到更新所有内容,但似乎没有任何效果。
当我做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
请帮助!
答案 0 :(得分:6)
由于您使用的是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(而不是您的2.7.14)的站点程序包。而且您或者没有pip
for Apple 2.7.10,或者您有一个较旧的版本。因此是错误。
Python Packaging User Guide建议您进行以下操作的原因是:处理多个Python安装(尤其是同一版本的多个安装)时遇到的麻烦
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
。
同时,如果您激活虚拟环境,则无论如何,python
和pip
(以及诸如2to3
之类的其他东西)都将成为该环境的版本。否则,您碰巧已经安装好了,并且整个系统设置令人困惑。
答案 1 :(得分:1)
在Mac上遇到了同样的问题,我通过以下方式解决了问题
$ brew upgrade python@2
基本上,以上命令将Apple的python 2.7.10返还给您。
$ which python
/usr/bin/python
$ python -V
Python 2.7.10
Pip立即生效,可以升级到19.0.1
pip --version
pip 18.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)
pip install --upgrade pip setuptools
pip --version
pip 19.0.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)
这是brew upgrade python@2
对Mac上的python的评价
==> python@2
Pip and setuptools have been installed. To update them
pip install --upgrade pip setuptools
You can install Python packages with
pip install <package>
They will install into the site-package directory
/usr/local/lib/python2.7/site-packages
See: https://docs.brew.sh/Homebrew-and-Python