为什么点子要我在已经更新时进行升级?

Myc*_*yco 3 python installation pip upgrade python-3.x

我安装了全新的python 3.7.1 64位安装程序,并且使用最新的pyCharm作为我的IDE。我在这台机器上没有其他的python安装。

我去安装numpy并收到以下消息:

(venv) C:\Users\John\PycharmProjects\project>pip install numpy
Requirement already satisfied: numpy in c:\users\john\pycharmprojects\pysims\venv\lib\site-packages (1.15.4)
You are using pip version 10.0.1, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
Run Code Online (Sandbox Code Playgroud)

所以我运行了建议的命令,但是它已经是最新的

(venv) C:\Users\John\PycharmProjects\project>python -m pip install --upgrade pip
Requirement already up-to-date: pip in c:\users\john\pycharmprojects\pysims\venv\lib\site-packages (18.1)
Run Code Online (Sandbox Code Playgroud)

所以我检查了版本,但仍然是旧版本

(venv) C:\Users\John\PycharmProjects\pySIMS>pip -V
pip 10.0.1 from c:\users\john\pycharmprojects\pysims\venv\lib\site-packages\pip-10.0.1-py3.7.egg\pip (python 3.7)
Run Code Online (Sandbox Code Playgroud)

我以为我会尝试py -3进行升级,并且可以正常工作。

(venv) C:\Users\John\PycharmProjects\pySIMS>py -3 -m pip install --upgrade pip
Collecting pip
  Using cached https://files.pythonhosted.org/packages/c2/d7/90f34cb0d83a6c5631cf71dfe64cc1054598c843a92b400e55675cc2ac37/pip-18.1-py2.py3-none-any.whl
Installing collected packages: pip
  Found existing installation: pip 10.0.1
    Uninstalling pip-10.0.1:
      Successfully uninstalled pip-10.0.1
Successfully installed pip-18.1
Run Code Online (Sandbox Code Playgroud)

但是版本还是旧的

(venv) C:\Users\John\PycharmProjects\pySIMS>pip -V
pip 10.0.1 from c:\users\john\pycharmprojects\pysims\venv\lib\site-packages\pip-10.0.1-py3.7.egg\pip (python 3.7)
Run Code Online (Sandbox Code Playgroud)

到底是怎么回事?我是否缺少一些显而易见的东西?我从未在Python 2中遇到过这样的问题,但是自从我移到Python 3以来,除了错误之外什么都没有。

Cri*_*lla 5

看起来您已经安装了多个pip,其中一个首先出现在PATH(pip)中,另一个则被python识别(python -m pip)。尝试运行命令:

pip show pip
Run Code Online (Sandbox Code Playgroud)

python -m pip show pip
Run Code Online (Sandbox Code Playgroud)

并检查路径是否相同。如果不是这样,我建议您卸载不需要的,或者更改您的PATH环境变量,以使包含正确pip的文件夹出现在错误的文件夹之前。