安装 pip 在 python < 3.6 中不起作用

Posted

技术标签:

【中文标题】安装 pip 在 python < 3.6 中不起作用【英文标题】:Installing pip is not working in python < 3.6 【发布时间】:2021-04-28 08:16:57 【问题描述】:

我开始使用 bitbucket CI 制作应用程序,我正在使用以下步骤部署应用程序,安装 pip 的步骤失败。

 script:
    - apt-get update
    - apt-get install -y python-dev
    - curl -O https://bootstrap.pypa.io/get-pip.py
    - python get-pip.py
    ... and a few more steps

不知道为什么,但 python get-pip.py 步骤失败并出现以下错误。

Traceback (most recent call last):
  File "get-pip.py", line 24226, in <module>
    main()
  File "get-pip.py", line 199, in main
    bootstrap(tmpdir=tmpdir)
  File "get-pip.py", line 82, in bootstrap
    from pip._internal.cli.main import main as pip_entry_point
  File "/tmp/tmpUgc5ng/pip.zip/pip/_internal/cli/main.py", line 60
    sys.stderr.write(f"ERROR: exc")
                                   ^

SyntaxError: invalid syntax

到昨天为止,这一切都很好。不知道为什么这现在不起作用。

我认为这可能是因为 Windows,但我检查了运行 linux 的本地计算机,但这些步骤运行良好。

【问题讨论】:

***.com/q/65866417/7976758, ***.com/q/65865755/7976758 发现于***.com/… @phd 谢谢。如果您发布答案,我很乐意接受。 :) 为了让它成为一个更好的答案,我需要知道你使用什么 Python 版本? 2.7? @phd 它只是在 bitbucket CI 中使用,不确定版本。所以我认为它的 2.7 【参考方案1】:

pip 21.0 dropped support for Python 2 and 3.5。更高版本需要 Python 3.6+。 Python 3.6+ 支持语法f""

要为 Python 2.7 安装 pip,请从 https://bootstrap.pypa.io/pip/2.7/ 安装它:

- curl -O https://bootstrap.pypa.io/pip/2.7/get-pip.py
- python get-pip.py
- python -m pip install --upgrade "pip < 21.0"

最后一个命令是升级到最新的支持版本。对于 Python 2.7,目前支持的最新版本是 pip20.3.4。

对于 Python 3.4,从 https://bootstrap.pypa.io/pip/3.4/ 安装。对于 Python 3.5 — https://bootstrap.pypa.io/pip/3.5/ .

对于 Python 3.4,升级命令是

- python -m pip install --upgrade "pip < 19.2"

【讨论】:

不需要升级命令,get-pip.py 会安装最新支持的版本 @ColinPickard 我更喜欢:a) 明确的; b) 如果用户想再次尝试升级pip,请写下命令以供将来参考。 这很好。但是 3.5 的命令是什么。从链接下载后? @Shivani 和帖子里一样:python get-pip.py 这对我不起作用 - pip 保留在 8.1.1 版本中,而不是安装的:Successfully installed pip-20.3.4【参考方案2】:

我通过第一次运行解决了它

python -m pip install --upgrade "pip &lt; 19.2"

然后

python -m pip install --upgrade "pip &lt; 21.0".

似乎重新安装了我的 pip 20.3.4 并且错误消失了!

【讨论】:

这很奇怪,但是,它也解决了我的问题。 同样的事情发生在我身上。点子很不稳定。【参考方案3】:

对我来说,下面的 aws ec2 上的 python 3.5 有效 curl -O https://bootstrap.pypa.io/pip/3.5/get-pip.py

然后 sudo python3.5 get-pip.pyenter image description here

【讨论】:

您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。【参考方案4】:

我也尝试了所有方法,但我的解决方案是下载旧的 get-pip 版本并安装。

    下载:curl -O https://bootstrap.pypa.io/2.7/get-pip.py文件get-pip.py 安装:python get-pip.pypython2 get-pip.py 享受

这适用于 Debian 系统。


编辑:更好的解决方案始终是安装长期支持的 Python 版本。如果您需要使用旧版本 - 只有这样,您才必须求助于上述解决方法。

【讨论】:

【参考方案5】:

这对我有用:在 Mac 上:

安装pyenv 并按照here 上的说明升级您的python

然后在您的终端中,如果您运行 python -V 并且仍然显示旧版本(系统预定义版本):

解决这个问题:

在终端运行:alias python=python3

然后在你的终端中执行python,你现在应该看到你的系统正在使用你安装的python版本-:也就是说,如果你正确地遵循并完成了Here的步骤。

重启终端(关闭/重新打开):

现在终于可以安装pip了:

Read more about pip instalation steps [here][3]

1:在你的终端执行:$ python -m ensurepip --upgrade

2:从https://bootstrap.pypa.io/get-pip.py下载脚本。

But..**NB**: instead of navigating to the exact link provided,check out the available versions of pip here:pipversions

选择最新版本:

然后选择 getpip.py 链接获取文件并将其保存到您机器上的目录中:

cd 进入保存新下载脚本的文件夹并执行:

然后执行:

python get-pip.py

pip 安装成功:

【讨论】:

以上是关于安装 pip 在 python < 3.6 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

安装 pip install gearman 时出现 Python 3.6 错误

通过pip安装python 3.6库的问题 - 找不到python36.dll

Windows 10- python 3.6 - 安装nltk

Python 3.6 安装后需要安装的常用 {控件}?

在 CentOS 7上安装并配置 Python 3.6 环境

Windows 下 Python 3.6 下安装 TensorFlow (屡败屡战)