CentOS 中默认安装了 2.7的Python,为了使用新版 python,可以对旧版本进行升级。但是由于很多基本的命令、软件包都依赖旧版本,比如:yum等。所以,在更新 Python 时,建议不要删除旧版本(新旧版本可以共存)。

1. 先去官网下载对应版本的python
输入命令 我在自定义文件下地址为 /home/python

wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
 (我的阿里云一核2g,1m带宽,下载有点慢,可以本地网络下载上传)

2.因为是新机器组件没有先安装组件,另外安装ssl这条很重要,需要安装下,不然python安装后运行代码会出问题,发请求会出现error,就是由于ssl和python安装没配套

#1. gcc相关组件

yum install make gcc gcc-c++


#2. zlib的解压缩类库

yum -y install zlib*
#支持python退格的组件
yum install readline-devel
# 安装ssl 非常重要啊
yum install -y openssl openssl-devel


3. 编译安装。下载到了/home/python这个文件下。

tar zxvf Python-3.6.3.tgz
cd Python-3.6.3
./configure --with-ssl
make
make install


 4.安装完后,输入python -v 还是2.7的版本,python3 -v可以显示是3.6.3版本

 

之后我们前往/usr/bin更改软连接即可

建议不要删除原来的版本,因为有很多组件依旧依赖原先的版本
 1.备份

mv /usr/bin/python /usr/bin/python2.7.bak


2.修改软连接

ln -s /home/python/Python-3.6.3/python /usr/bin/python

这里是网上抄的 本人试了几次都是错的
 注意看/home目录下面有没有对应的文件 没有的话就找一下 whereis python3  看在哪个目录 然后软连接就写哪个目录

懒得写步骤 上图 你懂的

centos7卸载Python centos卸载python3.6_软连接

这两个地方我跟着其他博客写的有问题,需要自己改下,看看/usr/bin/python,有没有这个文件,是不是python2。修改成功使用python -v命令显示的是python3.6.3的版本,修改失败显示没python的命令,我改了下上述的命令才成功。问题点在/usr/bin下的python文件的命名。

配置yum
升级Python之后,由于将默认的python指向了python3,yum不能正常使用,需要编辑 yum的配置文件,改为使用python2.7:

[root@centos7 bin]# vim /usr/bin/yum

#!/usr/bin/python2.7
import sys
try:
    import yum


 这个是网上版本,。我的centos7.4系统显示的改成2.7

#! /usr/bin/python


 

同时修改/usr/libexec/urlgrabber-ext-down中的配置。

[root@centos7 bin]# vim /usr/libexec/urlgrabber-ext-down

#! /usr/bin/python2.7
#  A very simple external downloader
#  Copyright 2011-2012 Zdenek Pavlas


 看你自己系统显示的是什么,,改下即可