自从python2官宣要停更后,大家都逐渐转向了Python3,但是很多使用Linux系统的会发现,底层软件的依赖依然是python2,并不兼容python3,默认依然是python2,所以对于python3的爱好者并不友好。本文从python3的安装,与python2的共存性上按照安装步骤来讲,本文采用的是Centos 7.6的版本。
1、首先,确认系统中python的安装版本。
CentOS 7.6 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5。
对于系统和使用者 ,并不确认是否已安装python3的话,使用 python -V 命令查看一下是否安装Python。然后使用命令 which python 查看一下Python可执行文件的位置
可见执行文件在/usr/bin/ 目录下,切换到该目录下执行 ll python* 命令查看 。
python 指向的是python2.7。
因为我们要安装python3版本,所以python要指向python3才行,目前还没有安装python3,先备份,备份之前先安装相关包,用于下载编译python3
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
不能忽略相关包,我之前就没有安装readline-devel导致执行python模式无法使用键盘的上下左右键;
然后备份 mv python python.bak
2、开始编译安装python3
可以去官网下载编译安装包或者直接执行以下命令下载
wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz
解压 tar -xvJf Python-3.6.7.tar.xz
切换进入 cd Python-3.6.7
编译安装
./configure prefix=/usr/local/python3
make && make install
安装完毕,/usr/local/目录下就会有python3了。
为了便于使用,避免每次启动都要进入安装目录,因此我们可以添加软链接到执行目录下/usr/bin
ln -s /usr/local/python3/bin/python3 /usr/bin/python
可以看到软链创建完成!
为了测试安装成功,执行
python -V
看看输出的是不是python3的版本
执行python2 -V
看到的就是python2的版本
因为执行yum需要python2版本,所以我们还要修改yum的配置,执行:
vi /usr/bin/yum
把#! /usr/bin/python修改为#! /usr/bin/python2
同理
vi /usr/libexec/urlgrabber-ext-down
把文件里面的#! /usr/bin/python 也要修改为#! /usr/bin/python2
另外,当尝试使用pip安装包的时候的发现无pip可用,其实只要把python3中的pip添加快捷方式就可以了
ln -s /usr/local/python3/bin/pip /usr/bin/pip
这样python3版本就安装完成;同时python2也存在
python -V 版本3
python2 -V 版本2