安装pip在python<3.6中不起作用
我开始使用 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 的本地机器,但这些步骤但它们工作正常。
回答
pip21.0放弃了对 Python 2 和 3.5 的支持。更高版本需要 Python 3.6+。Python 3.6+f""支持该语法。
要安装pipPython 2.7,请从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"
- The upgrade command is not needed, as get-pip.py will install the latest supported version
- @ColinPickard I prefer to be: a) explicit; b) to write down a command for future reference if a user would ever want to try to upgrade `pip` once again.