修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法

yipeiwu_com6年前Python基础

之前把现有这台阿里CentOS7.2系统的Python2.7.5升级成Python3.6后,yum工具就不能不觉使用了。当时查了下说明python版本的问题,但是用网上的方法还是没解决,后面也就一直没管了。最近要弄一个Nodejs小程序,需要用yum安装一些开发工具,不得不修复这个问题。

 

1 yum工具报错情况

直接执行 yum 命令就会提示 /usr/bin/yum 文件第34行有错误:

[root@typecodes ~]# yum
File "/usr/bin/yum", line 34
 ^
SyntaxError: EOF while scanning triple-quoted string literal
[root@typecodes ~]#

但是vim查看这个文件根本没有这一行:

 

2 解决方法

由于找不到报错的位置,只能考虑重新安装yum了。

 

2.1、下载yum安装包

[root@typecodes ~]# wget -c http://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz
[root@typecodes ~]# tar -zxf yum-3.4.3.tar.gz
[root@typecodes ~]# cd yum-3.4.3/

接着使用 python2 yummain.py install yum 命令(还是不能使用python3来执行)重新安装yum工具:

 

2.2、执行 yum 命令

尝试执行 yum 命令,在 /usr/bin/yum 文件的第30行报错:

[root@typecodes yum-3.4.3]# yum
File "/usr/bin/yum", line 30
 except KeyboardInterrupt, e:       ^
SyntaxError: invalid syntax
[root@typecodes yum-3.4.3]#

显然上面的 except 是python2的写法,当然不能使用默认的Python3来执行了。于是把这个文件第1行的 #!/usr/bin/python 替换成 #!/usr/bin/python2

2.2、继续执行 yum 命令

尝试执行 yum -y update 命令更新CentOS系统,结果在文件 /usr/libexec/urlgrabber-ext-down 第28行处还是报 SyntaxError: invalid syntax 的错误。

 

问题是一样的,要么把 /usr/libexec/urlgrabber-ext-down 文件中所有的except写法改成Python3,要么修改第1行的解释器声明。显然第2种方法更新简单有效。

3 解决完毕

到此,可以愉快地使用 yum -y update 命令更新CentOS系统,然后做开发了!

 

总结

以上所述是小编给大家介绍的修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python通过实例讲解反射机制

python通过实例讲解反射机制

一、反射机制简介: 通过字符串的形式导入模块 通过字符串的形式,去模块中寻找指定的函数,并执行 规定用户输入格式 模块名/函数名 通过__import__的形式导入模块,并...

使用PM2+nginx部署python项目的方法示例

之前面我们使用uwsgi部署项目比较繁琐,本章节介绍使用pm2+nginx一键部署django项目 PM2的主要特性: 内建负载均衡(使用Node cluster 集群模块)...

Python对象与引用的介绍

Python对象与引用的介绍

对象 Python 中,一切皆对象。每个对象由:标识(identity)、类型(type)、value(值)组成。 1. 标识用于唯一标识对象,通常对应于对象在计算机内存地址。使用...

Python基础知识点 初识Python.md

Python基础知识点 初识Python.md

Python简介 Python的历史 1989年圣诞节:Guido von Rossum开始写Python语言的编译器。 1991年2月:第一个Python编译器(同时也是解释器)...

pycharm配置pyqt5-tools开发环境的方法步骤

pycharm配置pyqt5-tools开发环境的方法步骤

本文介绍使用python+pyqt5开发桌面程序的一个可视化UI视图布局 一、环境包的安装 1、如果还不知道虚拟环境的可以参考,或者直接使用pipenv 2、安装pyqt5 pip3...