Python 不工作?

Python 不工作?,python,fedora,Python,Fedora,我有默认的Python2.7,我尝试安装python3.3并安装pip3和Django。现在,当我尝试使用yum安装其他人时,我遇到了此错误。例如,yum更新 导入一个Python模块时出现问题 需要运行yum。导致此问题的错误是: 没有名为yum的模块 请安装提供此模块的软件包,或 确认模块安装正确。 上述模块可能与 Python的当前版本,即: 2.7.5(默认,2013年11月12日,16:18:42) [GCC 4.8.2 20131017(Red Hat 4.8.2-1)] 如果您自己

我有默认的Python2.7,我尝试安装python3.3并安装pip3和Django。现在,当我尝试使用yum安装其他人时,我遇到了此错误。例如,yum更新

导入一个Python模块时出现问题 需要运行yum。导致此问题的错误是: 没有名为yum的模块 请安装提供此模块的软件包,或 确认模块安装正确。 上述模块可能与 Python的当前版本,即: 2.7.5(默认,2013年11月12日,16:18:42) [GCC 4.8.2 20131017(Red Hat 4.8.2-1)] 如果您自己无法解决此问题,请转到 有关yum常见问题解答,请访问:


如何修复此错误?

我也有同样的问题

Yum
是用Python语言编写的

因此,当您将默认Python升级到新版本时,这将给
yum
带来问题。 如果您得到
python--version
,它将告诉您3.3

要解决此问题,请将
python
命令更改为
python2.7

首先检查一下:

user@host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28  2013 /usr/bin/python -> python3.3
user@host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28  2013 /usr/bin/python -> python2.7
试试看:

mv /usr/bin/python /usr/bin/python-origin
ln -s python2.7 /usr/bin/python
然后检查它:

user@host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28  2013 /usr/bin/python -> python3.3
user@host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28  2013 /usr/bin/python -> python2.7
如果您希望在CentOS中安装python3,则应通过源代码进行安装

download main source code via python.org website.
extract archive file.
./configure
make
make install

您的系统上可能有许多python版本,其中只有一个安装了yum库。由于某些原因,在命令行上运行
yum
时调用的python二进制文件不是安装了yum库的人

查找系统上可用的python 2二进制文件列表。以root用户身份运行:

find / -type f -executable -name 'python2*'
ln -s /usr/bin/python2.x /usr/bin/python 
输出可能如下所示:

/usr/bin/python2.6
/usr/bin/python2.7
...
等等

对于其中的每一个,运行

/usr/bin/python2.x
您将得到一个python提示。 运行:

对每个python二进制文件都执行此操作,直到找到一个在这一步中不会引发错误的二进制文件

然后找出yum用于运行python的路径。 这是yum脚本中的第一行。跑

cat `which yum` | head -1
您可能会得到:

#!/usr/bin/python
现在,以root用户身份运行:

find / -type f -executable -name 'python2*'
ln -s /usr/bin/python2.x /usr/bin/python 

(将python2.x替换为您之前找到的好的python版本)。

您不应该更改python系统
yum
依赖于它。如果您安装了一个新的python,请将它放在另一个路径中。然后,您可以使用
virtualenv
无缝地使用新的python。检查这里:当我尝试运行python时——版本是python 2.7.5
less/usr/bin/yum
的第一行是什么?您是否试图通过主源代码安装
python3
?我只是从python下载了python。org@user3480706我升级了我的职位,再检查一遍,你是对的。但是我需要使用python2.7而不是python2.6。如何使python2.7成为默认的python版本?这就是我在回答中编写的
ln-s/usr/bin/python2.x/usr/bin/python
命令的目的。将/usr/bin/python2.x替换为系统上python2.7的位置。如果不是/usr/bin/python2.7,请运行
哪个python2.7
,找出它在哪里。当然,只有当python2.7确实应该是系统上的默认python时,才这样做。如果python2.6是发行版正式支持的python版本,那么应该保持这种状态。当你想用python2.7.Yes运行应用程序时,只需运行python2.7 myapp.py。那么我就不能再使用easy_install或pip了,每次我都使用python2.7 setup.py安装