如何在不更改任何默认值的情况下在 Ubuntu 上为 python 3.8 安装 pip?

新手上路,请多包涵

我正在尝试为 pipPython 3.8 上安装 Ubuntu 18.04 LTS

我知道这已经被问了太多次了。但这些问题与保留 Ubuntu 的默认值无关。这些问题的答案要么不起作用,要么继续提出一些非常激烈的建议,以至于会破坏系统——例如更改默认值 python3 版本从 3.63.8 。你 不应该

到目前为止,我已经能够安装 python3.8 成功使用 PPA - ppa:deadsnakes/ppa

 sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.8

python 命令从 python2 更改为 python3.8 使用 update-alternatives

 update-alternatives --remove python /usr/bin/python2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 10

现在,当我运行 --- 时,我得到 python 3.8 python --version

蟒蛇 3.8.5

问题是,我仍然无法为 --- 安装 pip Python 3.8

If I try to install python3-pip , it installs pip for Python 3.6 since python3 still points to python3.6.9 , and我打算保持这种状态。

尝试安装 python-pip ,它会为 --- 安装 pip Python 2.7

也没有这样的包 python3.8-pip ,所以我不能像这样安装它:

 sudo apt install python3.8-pip

输出:

E: 无法定位包 python3.8-pip

E: 无法通过 glob ‘python3.8-pip’ 找到任何包

E: 无法通过正则表达式“python3.8-pip”找到任何包

我该怎么做才能在 Ubuntu 18.04 上安装 pip for Python 3.8

原文由 Qumber 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 811
2 个回答

虽然我们可以直接将 pip 用作 Python module (推荐方式):

 python -m pip --version

我是这样安装的(所以可以直接调用):

首先,确保命令 pip 可用并且它没有被 pip 用于 Python 2.7

 sudo apt remove python-pip

现在,如果您在终端中写入 pip ,您会发现那里没有安装任何东西:

 pip --version

输出:

命令“pip”未找到,但可以安装:

sudo apt 安装 python-pip

安装 python3.8 并使用 update-alternativespython 命令上设置正确的版本—(如问题中所做的那样)。

确保您安装了 python3-pip

(如果没有 python3-pip 将无法工作。虽然这将安装 pip 9.0.1 from python 3.6 ,但我们需要它。)

 sudo apt install python3-pip

这将安装 pip 9.0.1 作为 pip3

 pip3 --version

输出:

来自 /usr/lib/python3/dist-packages 的 pip 9.0.1(python 3.6)

Now, to install pip for Python 3.8 , I used pip by calling it as a python module ( ironic ! ):

 python -m pip install pip

输出:

收集点

下载 https://files.pythonhosted.org/packages/36/74/38c2410d688ac7b48afa07d413674afc1f903c1c1f854de51dc8eb2367a5/pip-20.2-py2.py3-none-any.whl (1.5MB)

100% |████████████████████████████████| 1.5MB 288kB/s

安装收集的包:pip

成功安装 pip-20.2

看起来,当我调用 pip (为 Python 3.6,BTW 安装)作为 Python 3.8 的模块,并安装 pip 时,它确实有效。

现在,确保您的 ~/.local/bin 目录设置在 PATH 环境变量中:

开放 ~/.bashrc .bashrc 您喜欢的编辑器(如果您使用的是 zsh .zshrc

 nano ~/.bashrc

并将以下内容粘贴到文件末尾

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

最后,获取您的 .bashrc (或重新启动终端窗口):

 source ~/.bashrc

现在,如果您尝试直接运行 pip ,它将为您提供正确的版本:

 pip --version

输出:

来自 /home/quumber/.local/lib/python3.8/site-packages/pip 的 pip 20.2(python 3.8)

甜的!

原文由 Qumber 发布,翻译遵循 CC BY-SA 4.0 许可协议

正如 官方文档 中所建议的,您可以尝试使用 get-pip.py。

 wget https://bootstrap.pypa.io/get-pip.py
python3.8 get-pip.py

这会将 pip 安装为 pip3.8

原文由 Vaibhav Panmand 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题