问题描述
升级到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
可悲的是,它删除了所有内容。现在,谷歌浏览器不显示任何字体。我正在寻找使事情恢复正常的工作。需要帮助以再次正确配置它。
最佳方法
如果您使用的是virtualenvwrapper,则可以在现有虚拟环境的顶部重新创建virtualenv(当前没有活动的环境):
mkvirtualenv <existing name>
它将从系统中获取最新(升级)的python版本,并修复所有不匹配错误。
次佳方法
您无需重新创建环境。
您可以运行以下命令来升级virtualenv:
virtualenv /PATH/TO/YOUR_OLD_ENV
YOUR_OLD_ENV
文件夹将被正确升级到版本2.7.4。
第三种方法
我刚刚在机器上解决了这个问题。
问题是Ubuntu 13.04使用python 2.7.4。这与virtualenv
的Python版本冲突。
我要做的是使用新版本的python对re-create virtualenv
进行操作。我认为这是最简单的方法,但是您可以尝试在没有所有virtualenv
的re-creating的情况下升级python版本。