我有一个ubuntu20 ,自带的 python3 解释器版本是3.8 ,但是我通过 sudo pip install python3.9
安装了一个 python3.9 然后我想给 python3.9 安装一个 pip 包管理器,如果通过 sudo apt install python3-pip
命令安装 pip 的话,是默认给 python3.8 安装的。
要验证我说的真实性,你可以在终端输入
pip -V
pip -V pip 21.2.4 from /home/bot/.local/lib/python3.8/site-packages/pip (python 3.8)
所以,这个时候,先卸载通过 apt 包管理器安装的 pip
sudo apt purge python3-pip
为什么要用 apt 来卸载 pip ?因为我之前的 pip 就是通过 apt 安装的,Linux 自带的 Python 是不包含 pip 的,需要 pip 一般都是通过类似 apt install python3-pip 的方式来安装的。但是这不是唯一方式!下面介绍的就是通过 get-pip.py 脚本来安装 pip ,这更加灵活,并且可以适应多版本
步骤一:
运行 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
➜ ~ cd Downloads
➜ Downloads curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1911k 100 1911k 0 0 1864k 0 0:00:01 0:00:01 --:--:-- 1864k
步骤二:
运行 python3.9 get-pip.py
命令
➜ Downloads python3.9 get-pip.py
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting pip
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ca/31/b88ef447d595963c01060998cb329251648acf4a067721b0452c45527eb8/pip-21.2.4-py3-none-any.whl (1.6 MB)
Installing collected packages: pip
Successfully installed pip-21.2.4
请注意,你要为哪个解释器安装 pip 就用那个解释器来运行这个脚本。最好用绝对路径,免得你搞错
步骤三:
运行 pip -V
命令
➜ Downloads pip -V
pip 21.2.4 from /home/bot/.local/lib/python3.9/site-packages/pip (python 3.9)
大功告成!
参考教程
多版本Python安装pip及pip版本管理终极教程
pypy 安装 pip
可以用上面的办法解决 Linux 自带的 Python 多版本下的 pip 管理。
但是如果你有一些自己编译的解释器,比如 Python3.10 或者 pypy 这些,也同样可以执行 get-pip.py
脚本。
不同的是,这样的 pip 路径就不是 apt 那个路径了,而是解释器所在的路径
比如我在 /home/bot/opt/python/pypy/pypy3.9/bin
执行了 ./python3.9 ~/Downloads/get-pip.py
这个命令,那 pip 是出现在 /home/bot/opt/python/pypy/pypy3.9/bin
中,而不是其他
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。