【问题标题】:Can't get pip to work after installing newer python安装较新的python后无法让pip工作
【发布时间】:2020-07-02 19:18:05
【问题描述】:

我将 python 3.8 安装在与 3.7 不同的位置,后来在尝试解决 pip 问题时卸载了 3.7。我现在无法让 pip 响应安装任何模块。它一直引用它的旧 python 3.7 位置,我不知道如何让它专注于 3.8 安装位置。

以下是我遇到的错误:

>pip --version
Fatal error in launcher: Unable to create process using '"c:\program files\python37\python.exe"  "C:\Program Files\Python37\Scripts\pip.exe" --version': The system cannot find the file specified.

>python get-pip.py
Collecting pip
  Using cached pip-20.1.1-py2.py3-none-any.whl (1.5 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 20.1.1
    Uninstalling pip-20.1.1:
      Successfully uninstalled pip-20.1.1
Successfully installed pip-20.1.1

现在,当我调用 pip --version 时,我得到了原始错误。 为了了解更多信息,这里还有两个电话可能有助于解决问题。

>which python
/c/Users/patch/AppData/Local/Programs/Python/Python38/python

>python --version
Python 3.8.3

我只是希望能够再次使用 pip 来安装模块。我正在学习一些 python,这个 pip 问题真的让我慢了下来。

我愿意完全卸载 python 并清理系统的痕迹,我只是不知道什么是最安全和最有可能工作的选项。

【问题讨论】:

    标签: python pip


    【解决方案1】:

    使用

    python -m pip --version
    python -m pip install PACKAGE_NAME
    

    这将使用与较新的python 关联的pip

    我建议使用python -m pip install 命令而不是pip install,因为使用哪个python 版本更清楚。

    【讨论】:

    • 哦,你的意思是当我使用它的时候,使用这个-m。 gotcha 现在就试试这个
    • 我意识到我的回答应该更清楚。 python -m pip install command 中的 ... 表示您要安装的软件包。因此,如果您想安装 numpy,例如,您可以使用 python -m pip install numpy
    • 成功了,谢谢。无论如何要使默认点子只使用它,否则它不起作用?
    • 很好,如果这是您问题的答案,请用绿色复选标记进行标记。我个人总是使用python -m pip install 语法,因为它更清晰,但要修复您的环境,我会参考answer below。虚拟环境旨在解决这个问题。查看virtualenv、miniconda、pyenv-win 或其他解决方案。
    【解决方案2】:

    我建议从您的系统中清除 3.7 和 3.8,然后使用 pyenv(如果您使用适用于 Linux 的 Windows 子系统)或 pyenv-win(如果不在 WSL 上)重新安装您需要的版本以管理多个Python 版本。它会检查您设置的特定目录的 Python 版本,然后再决定将哪个版本的可执行文件用于 Python、pip 等。从长远来看,该解决方案也适用于您可能想要安装的未来 Python 版本。

    未来使用 pyenv 或 pyenv-win 的安装将涉及像 pyenv install 3.8.1 这样的命令。有关可用版本的完整列表,您可以运行 pyenv install -l

    如果您想要立即但短期的修复,@jakub 的解决方案将起作用。

    【讨论】:

    • 我同意,初学者(每个人,真的)应该养成使用虚拟环境的习惯,以保持他们的 python 安装整洁。因为我主要使用python进行科学计算,所以我喜欢将Miniconda用于虚拟环境,但当然还有其他解决方案。
    • 完全正确——像往常一样,有一个相关的 XKCD 关于 Python 环境如何迅速变得混乱:xkcd.com/1987
    猜你喜欢
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-05
    • 2020-06-29
    相关资源
    最近更新 更多