Python升级导致yum、pip报错的解决方法

yipeiwu_com6年前Python基础

前言

本文主要给大家介绍了因Python升级导致yum、pip报错的解放方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

原因:

yum是Python写的。服务器上Python版本过低,升级为2.7,而yum/pip未升级,导致在执行yum/pip时报这个错误。

yum报错:

There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

 No module named yum

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.7.10 (default, Sep 5 2017, 17:35:43) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
 http://yum.baseurl.org/wiki/Faq

pip报错:

Traceback (most recent call last):
 File "/usr/bin/pip2", line 5, in <module>
 from pkg_resources import load_entry_point
ImportError: No module named pkg_resources

解决方案:

1、查看Python版本,执行:

which python

可以查看到存在两个版本的Python。

2、查看yum文件,执行:

vim /usr/bin/yum

可以在文件的第一行,看到yum的Python引用。将原有的 #!/usr/bin/python 改为 #!/usr/bin/python2.6(老版本)

3、跳出再次执行yum,即可使用。

pip同理修改

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

使用python实现unix2dos和dos2unix命令的例子

由于工作电脑网络限制无法安装unix2dos和dos2unix命令转换文件,自己实现一个 直接上代码,保存为python文件如unix2dos.py然后使用命令 unix2dos.p...

unittest+coverage单元测试代码覆盖操作实例详解

unittest+coverage单元测试代码覆盖操作实例详解

基于上一篇文章,这篇文章是关于使用coverage来实现代码覆盖的操作实例,源代码在上一篇已经给出相应链接。 本篇文章字用来实现代码覆盖的源代码,整个项目的测试框架如下: 就是在源代码...

pymssql ntext字段调用问题解决方法

下面是调用方式: Example script - pymssql module (DB API 2.0) Example script - _mssql module (lower...

Python实现多线程的两种方式分析

本文实例讲述了Python实现多线程的两种方式。分享给大家供大家参考,具体如下: 目前python 提供了几种多线程实现方式 thread,threading,multithreadin...

Python中用memcached来减少数据库查询次数的教程

本来我一直不知道怎么来更好地优化网页的性能,然后最近做python和php同类网页渲染速度比较时,意外地发现一个很简单很白痴但是 我一直没发现的好方法(不得不BS我自己):直接像某些ph...