Ubuntu16.04安装Python3.8,3.7,3.9(含卸载方法,支持多版本共存)


前言

本文将按照Python的各个版本进行介绍的是Ubuntu16.04下安装相应版本Python的过程可选择所需的版本进行查看各个版本的命令基本相同其中Python3.8的是图解版其余的是命令版。本文仅在Ubuntu16.04下测试过对于其他系统版本未测试一般情况下具有通用性这里看个人情况而定。
本文对于Python安装的定位是独立安装不修改或覆盖系统原有python的文件包括软链接易卸载


一、前期准备所有版本

1. 安装所需依赖

sudo apt-get install libffi-dev uuid-dev lzma-dev liblzma-dev libncurses5-dev libgdbm-dev sqlite3 libsqlite3-dev openssl tcl8.6-dev tk8.6-dev libreadline-dev zlib1g-dev build-essential bzip2 libbz2-1.0 libbz2-dev libc6-dev libdb-dev libexpat1 libexpat1-dev libgdbm3 libncursesw5-dev libpcap-dev libreadline5 libreadline6 libreadline6-dev libsqlite0 libsqlite0-dev libsqlite3-0 libssl-dev libssl1.0.0 libxml2-dev libxslt1-dev sqlite tcl tk tk-dev xz-utils zlib1g zlib1g-dev make  

在这里插入图片描述

2. 配置Python版本切换

Ubuntu系统自带有python2.7python3.5这里先添加这两个的版本切换即使用pythonpython3两个命令时使用哪个版本的python由于Ubuntu系统对自带的两个python有一定程度的依赖本文是不建议切换上述pythonpython3两个命令的Python版本的否则会带来一些问题。

例如升级Python后无法打开终端系统启动总是提示软件更新时发生错误无法打开系统设置的软件和更新界面等
命令的版本对应python => python2.7 python3 => python3.5

① 查看候选列表中已有的Python版本没有配置过的话是不存在的

sudo update-alternatives --list python

在这里插入图片描述
② 添加 python & python3 指向选择
最后的序号表示优先级数字越大优先级越高会自动选取优先级高的作为默认指向可手动更改默认指向这里将系统默认的指向的优先级设置为100

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 99
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 100

在这里插入图片描述
在这里插入图片描述
③ 查看候选列表中已有的Python版本

sudo update-alternatives --list python
sudo update-alternatives --list python3

在这里插入图片描述

此时python指向python2.7python3指向python3.5
在这里插入图片描述

④ 创建新版python的安装目录便于卸载

cd /usr/local
sudo mkdir -p /usr/local/python
sudo chmod -R 777 ./python

在这里插入图片描述

下面将进行各个版本的安装至于版本号的选择可自行到下面的网址去找后续操作中修改其中的版本号即可。
官方网址https://www.python.org/ftp/python/
在这里插入图片描述


二、Python3.83.8.11–详细图解

1.下载源码安装包

这里选的是Python3.8的3.8.11版如果下载较慢可尝试连接手机热点进行下载。如果已准备了安装包可以跳过该步骤。

cd ~
wget https://www.python.org/ftp/python/3.8.11/Python-3.8.11.tgz

在这里插入图片描述

2.创建安装目录

在上述前期准备中已经在/usr/local目录下创建了一个python目录那么各个新安装的python都将放在这里安装多个的情况下那么需要对每个版本的进行独立分包。实际上安装时如果没有创建会自动创建。

cd /usr/local/python
mkdir ./python3.8

在这里插入图片描述

3.解压安装包

cd ~
tar -xf ~/Python-3.8.11.tgz

在这里插入图片描述

4.配置将要安装的目录

这里的configure的参数配置有些门道如果你想设置更多的东西可以自行去查找。博主不想所以下面的就足够了

cd ~/Python-3.8.11
./configure prefix=/usr/local/python/python3.8 --enable-optimizations

在这里插入图片描述
在这里插入图片描述

5.编译源码

很多教程都是编译和安装一起的个人觉得编译过程是会有一些问题的例如某个模块不能编译但是即使这样安装还是会进行这样就不是很好。
编译时间会比较长耐心等待。。。。

cd ~/Python-3.8.11
make -j 2

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

6.安装

一定要使用altinstall看过的教程有说明过使用install会覆盖安装可能会导致Ubuntu崩溃的情况。

cd ~/Python-3.8.11
make altinstall  >&1|tee make.log

这里执行会很快输出较多没截到命令的图看个结果吧。
在这里插入图片描述

7.添加环境变量

gedit ~/.bashrc

添加以下内容其中第一行注释属于个人喜好可不添加

#[Python3.8]
export PATH=$PATH:/usr/local/python/python3.8/bin

在这里插入图片描述
让环境变量生效

source ~/.bashrc

在这里插入图片描述

8. 添加和选择python&python3命令指向

添加命令指向【数值比前面设置的默认指向的优先级100小即可】

sudo update-alternatives --install /usr/bin/python python /usr/local/python/python3.8/bin/python3.8 38 
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/python/python3.8/bin/python3.8 38

在这里插入图片描述

选择python命令的默认版本【这里只是查看按回车即可】

可以2.73.53.8至于选取的问题随着使用情景不同而有所改变但使用完最好更换为Ubuntu系统默认的指向python2.7此时已经是默认的指向会自动选取优先级高的。

sudo update-alternatives --config python

在这里插入图片描述

选择python3命令的默认版本【这里只是查看按回车即可】

python3一般选择与Ubuntu系统默认的指向3.5否则无法在启动器栏打开新终端。

sudo update-alternatives --config python3

在这里插入图片描述

这样之后下面是各命令的启动版本
python2 ==> python2.7
python ==> python2.7
python3 ==> python3.5
python3.5 ==> python3.5
python3.8 ==> python3.8

在这里插入图片描述

pip 指向自动跟随 python 的指向
pip3 指向自动跟随 python3 的指向

9.pip安装依赖包

对于python3.8安装后使用pip请以python3.8 -m pip install xxx的形式使用同时对于python3.8的使用建议明确指明版本来使用而不建议更改python3的指向因为Ubuntu的图形界面一定程度上是依赖自带的两个版本的python更改指向可能会带来意想不到的问题。

可更新python3.8自带的pip的版本也可不更新一般原版的更配只是新版的进度条更好看也没有版本更新警告。
python3.8 -m pip install --upgrade pip  
如果想切换回原版的
python3.8 -m pip install --upgrade pip==21.1.1
python3.8 -m pip install flask-socketio
python3.8 -m pip install numpy -i https://pypi.douban.com/simple/
python3.8 -m pip install pandas -i https://pypi.douban.com/simple/
python3.8 -m pip install kafka
python3.8 -m pip install kafka-python

在这里插入图片描述
在这里插入图片描述

10.删除安装文件

cd ~
sudo rm -r ./Python-3.8.11
rm -r ./Python-3.8.11.tgz
安装完成后建议重启一次系统

11.卸载方法安装时无需操作

这里给出卸载的命令如果不需要了可以进行卸载。

#1.移除指向
sudo update-alternatives --remove python /usr/local/python/python3.8/bin/python3.8
sudo update-alternatives --remove python3 /usr/local/python/python3.8/bin/python3.8
#2.删除安装目录对于Linux而言便是卸载
rm -r /usr/local/python/python3.8
#3.移除环境变量
gedit ~/.bashrc
把上面添加的环境变量内容删除即可
source ~/.bashrc

三、Python3.73.7.9–已测试

1.下载源码安装包
这里选的是Python3.7的3.7.9版如果下载较慢可尝试连接手机热点进行下载。如果已准备了安装包可以跳过该步骤。

cd ~
wget https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tgz

2.创建安装目录
在上述前期准备中已经在/usr/local目录下创建了一个python目录实际上安装时如果没有创建会自动创建。

cd /usr/local/python
mkdir ./python3.7

3.解压安装包

cd ~
tar -xf ~/Python-3.7.9.tgz

4.配置将要安装的目录

cd ~/Python-3.7.9
./configure prefix=/usr/local/python/python3.7 --enable-optimizations

5.编译源码
3.7的编译时间相比其他版本会更长耐心等待。。。。

cd ~/Python-3.7.9
make -j 2

6.安装
一定要使用altinstall看过的教程有说明过使用install会覆盖安装可能会导致Ubuntu崩溃的情况。

cd ~/Python-3.7.9
make altinstall  >&1|tee make.log

7.添加环境变量

gedit ~/.bashrc

添加以下内容其中第一行注释属于个人喜好可不添加

#[Python3.7]
export PATH=$PATH:/usr/local/python/python3.7/bin

让环境变量生效

source ~/.bashrc

8. 添加和选择python&python3命令指向
添加命令指向【数值比前面设置的默认指向的优先级100小即可】

sudo update-alternatives --install /usr/bin/python python /usr/local/python/python3.7/bin/python3.7 37 
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/python/python3.7/bin/python3.7 37

选择python命令的默认版本【这里只是查看按回车即可】
*号指向应当是Ubuntu系统默认的指向python2.7

sudo update-alternatives --config python

选择python3命令的默认版本【这里只是查看按回车即可】
*号指向应当是Ubuntu系统默认的指向python3.5

sudo update-alternatives --config python3

python3.7的启动命令
python3.7 ==> python3.7

9.pip安装依赖包
对于python3.7安装后使用pip请以python3.7 -m pip install xxx的形式使用同时对于python3.7的使用建议明确指明版本来使用而不建议更改python3的指向因为Ubuntu的图形界面一定程度上是依赖自带的两个版本的python更改指向可能会带来意想不到的问题。

可更新python3.7自带的pip的版本也可不更新一般原版的更配只是新版的进度条更好看也没有版本更新警告。
python3.7 -m pip install --upgrade pip  
如果想切换回原版的
python3.7 -m pip install --upgrade pip==20.1.1
python3.7 -m pip install flask-socketio
python3.7 -m pip install numpy -i https://pypi.douban.com/simple/
python3.7 -m pip install pandas -i https://pypi.douban.com/simple/
python3.7 -m pip install kafka
python3.7 -m pip install kafka-python

10.删除安装文件

cd ~
sudo rm -r ./Python-3.7.9
rm -r ./Python-3.7.9.tgz
最好进行一次系统重启

11.卸载方法安装时无需操作
这里给出卸载的命令如果不需要了可以进行卸载。

#1.移除指向
sudo update-alternatives --remove python /usr/local/python/python3.7/bin/python3.7
sudo update-alternatives --remove python3 /usr/local/python/python3.7/bin/python3.7
#2.删除安装目录对于Linux而言便是卸载
rm -r /usr/local/python/python3.7
#3.移除环境变量
gedit ~/.bashrc
把上面添加的环境变量内容删除即可
source ~/.bashrc

四、Python3.93.9.13–已测试

1.下载源码安装包
这里选的是Python3.9的3.9.13版如果下载较慢可尝试连接手机热点进行下载。如果已准备了安装包可以跳过该步骤。

cd ~
wget https://www.python.org/ftp/python/3.9.13/Python-3.9.13.tgz

2.创建安装目录
在上述前期准备中已经在/usr/local目录下创建了一个python目录实际上安装时如果没有创建会自动创建。

cd /usr/local/python
mkdir ./python3.9

3.解压安装包

cd ~
tar -xf ~/Python-3.9.13.tgz

4.配置将要安装的目录

cd ~/Python-3.9.13
./configure prefix=/usr/local/python/python3.9 --enable-optimizations

5.编译源码

cd ~/Python-3.9.13
make -j 2

6.安装

cd ~/Python-3.9.13
make altinstall  >&1|tee make.log

7.添加环境变量

gedit ~/.bashrc

添加以下内容其中第一行注释属于个人喜好可不添加

#[Python3.9]
export PATH=$PATH:/usr/local/python/python3.9/bin

让环境变量生效

source ~/.bashrc

8. 添加和选择python&python3命令指向
添加命令指向【数值比前面设置的默认指向的优先级100小即可】

sudo update-alternatives --install /usr/bin/python python /usr/local/python/python3.9/bin/python3.9 39 
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/python/python3.9/bin/python3.9 39

选择python命令的默认版本【这里只是查看按回车即可】
*号指向应当是Ubuntu系统默认的指向python2.7

sudo update-alternatives --config python

选择python3命令的默认版本【这里只是查看按回车即可】
*号指向应当是Ubuntu系统默认的指向python3.5

sudo update-alternatives --config python3

python3.9的启动命令 python3.9

9.pip安装依赖包
对于python3.9安装后使用pip请以python3.9 -m pip install xxx的形式使用同时对于python3.9的使用建议明确指明版本来使用而不建议更改python3的指向因为Ubuntu的图形界面一定程度上是依赖自带的两个版本的python更改指向可能会带来意想不到的问题。

可更新python3.9自带的pip的版本也可不更新一般原版的更配只是新版的进度条更好看也没有版本更新警告。
python3.9 -m pip install --upgrade pip  
如果想切换回原版的
python3.9 -m pip install --upgrade pip==22.0.4
python3.9 -m pip install flask-socketio
python3.9 -m pip install numpy -i https://pypi.douban.com/simple/
python3.9 -m pip install pandas -i https://pypi.douban.com/simple/
python3.9 -m pip install kafka
python3.9 -m pip install kafka-python

10.删除安装文件

cd ~
sudo rm -r ./Python-3.9.13
rm -r ./Python-3.9.13.tgz
最好进行一次系统重启

11.卸载方法安装时无需操作
这里给出卸载的命令如果不需要了可以进行卸载。

#1.移除指向
sudo update-alternatives --remove python /usr/local/python/python3.9/bin/python3.9
sudo update-alternatives --remove python3 /usr/local/python/python3.9/bin/python3.9
#2.删除安装目录对于Linux而言便是卸载
rm -r /usr/local/python/python3.9
#3.移除环境变量
gedit ~/.bashrc
把上面添加的环境变量内容删除即可
source ~/.bashrc

对于Python的其他版本安装方法都基本类似只需要更改对应的版本号即可。
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: pythonUbuntu