ubuntu ImportError:无法导入名称MAXREPEAT

时间:2013-04-30 10:39:42

标签: python ubuntu

升级到13.04已完全搞砸了我的系统。 运行时我遇到了这个问题

     ./manage.py runserver


Traceback (most recent call last):
File "./manage.py", line 8, in <module>
from django.core.management import execute_from_command_line
File "/home/rats/rats/local/lib/python2.7/site-packages/django/core/management   
/__init__.py", line 4, in <module>
from optparse import OptionParser, NO_DEFAULT
File "/usr/lib/python2.7/optparse.py", line 77, in <module>
import textwrap
File "/usr/lib/python2.7/textwrap.py", line 10, in <module>
import string, re
File "/usr/lib/python2.7/string.py", line 83, in <module>
import re as _re
File "/home/rats/rats/lib/python2.7/re.py", line 105, in <module>
import sre_compile
File "/home/rats/rats/lib/python2.7/sre_compile.py", line 14, in <module>
import sre_parse
File "/home/rats/rats/lib/python2.7/sre_parse.py", line 17, in <module>
from sre_constants import *
File "/home/rats/rats/lib/python2.7/sre_constants.py", line 18, in <module>
from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT

这既适用于真实环境,也适用于虚拟环境。 我尝试用

删除python
sudo apt-get remove python
可悲的是,它已经删除了一切。 现在谷歌浏览器没有显示任何字体。 我正在寻找恢复工作的东西。 需要帮助才能再次正确配置它。

3 个答案:

答案 0 :(得分:36)

如果您使用的是virtualenvwrapper,那么您可以在现有的virtualenv之上重新创建virtualenv(当前没有环境活动):

mkvirtualenv <existing name>

应该从系统中提取最新的(升级的)python版本并修复任何不匹配错误。

答案 1 :(得分:30)

您无需重新创建环境。

您可以升级运行此命令的virtualenv:

  

virtualenv / PATH / TO / YOUR_OLD_ENV

YOUR_OLD_ENV文件夹将正确升级到2.7.4版。

答案 2 :(得分:8)

我刚刚在我的机器上解决了这个问题。

问题在于Ubuntu 13.04使用python 2.7.4。这与virtualenv的Python版本冲突。

我所做的是用新版本的python重新创建virtualenv。我认为这是最简单的方法,但您可以尝试升级python版本而无需重新创建所有virtualenv