Ubuntu16.04下完美安装python高版本及对应版本的pip
方法一:直接用命令安装python3.6(但我没安装成功)
好像是因为Ubuntu16.04的软件仓库(源)中python的最高版本就是python3.5,所以无法直接用apt来安装
#方法一
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6
#方法二
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6
参考链接:
ubuntu16.04,卸载系统自带的python3.5引发了一宗惨案,好在最终完美解决
Ubuntu16.04下完美安装python3.6.x(以3.6.9为例)及对应版本的pip
方法二:用源码安装,这里装python3.8.11
wget https://www.python.org/ftp/python/3.8.11/Python-3.8.11.tgz
#解压,用xfz命令,不推荐用-zxvf 权限问题,不深究
tar xfz Python-3.8.11.tgz
cd Python-3.8.11
./configure --with-ssl
make
sudo make install
注意:python3.8.11会自动安装到/usr/local/bin下,你可以用update-alternatives来控制python版本,好用!
在python3.6安装好后,你还需要安装对应版本的pip。可以采用如下指令查看python版本对应的pip有没有安装
pip -V
pip2 -V
pip3 -V
pip3.8 -V
pip3.5 -V
如果安装了:
pip 21.1.1 from /usr/local/lib/python3.8/site-packages/pip (python 3.8)
如果没有安装,可以采用如下指令。不行的话,就百度查查,不难。
sudo apt-get install python3-pip #装pip3
或者
sudo apt install -y python3-pip
这是一个Linux命令,它的作用是安装Python 3的包管理工具pip。其中,sudo是Linux中的一个命令,用于以超级管理员身份来执行某个命令。apt是Ubuntu和Debian等Linux发行版中用于管理软件包的工具。install是apt的一个子命令,用于安装软件包。-y参数表示在安装时不需要人工确认。在这里,我们通过使用apt来安装Python 3的包管理工具pip,以便在之后使用pip来安装Python包。
apt 和 apt-get功能差不多。在专业人士看来,选择apt 是值得的,因为它提供了软件包管理的所有必需功能,并且更快,更友好且易于使用。
使用 update-alternatives设置python优先级
update-alternatives 本质上就是管理软链接,但提供了更规范安全的操作接口。这里只是为了建一个简单的版本管理,只需要用到一两个指令,其他功能不予深究。 首先,看一下是不是已经配置过了:
sudo update-alternatives --config python
以上指令中,sudo 是因为涉及到配置 /usr/bin 下的软链接,需要 sudo 权限;
–config 后跟所谓的服务名,此处即 python,也就是你配置的这一套版本管理的指代名称。
如果显示“无候选项”,或者不完善,说明在“python”的这个版本系列里,你还没有设置优先级。
优先级示例设置:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 2
以上指令中,
/usr/bin/python 是要创建的软链接的名字,是几个版本共用的;
后面的 python 即服务名,添加的版本会加入到名叫“python”的这个版本系列里,如果之前不存在(“无候选项”)则创建;
接下来的 /usr/bin/python2 就是软件的实际位置;
最后的数字是优先级,后续可以选择自动模式和手动模式,自动模式下就会自动选择优先级值最大的一个版本。
注意,我的python3.8.11会被安装到/usr/local/bin下,因此正确做法如下:
调整Python3的优先级,使得3.8优先级较高
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.8 2
现在系统python默认为Python2,需要修改为Python3
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150
结果查询:
移除链接,
sudo update-alternatives --remove name path
这里我们移除python3里的python3.8:
sudo update-alternatives --remove python3 /usr/local/bin/python3.8
参考链接:
ubuntu16.04安装python3
Linux命令之update-alternatives