2015-09-28 9 views
1

Я пытаюсь использовать Python с фреймворком Twisted и стараюсь его запустить.Разбитый Python на Mac, удалив Python неправильно, как заставить модули работать снова?

У меня есть грунтовая простой код Python:

from twisted.internet import reactor 
reactor.run() 

купить, когда я бегу python server.py я вернусь:

File "server.py", line 1, in <module> 
    from twisted.internet import reactor File "/Library/Python/2.7/site-packages/twisted/__init__.py", line 53, in 
<module> 
    _checkRequirements() File "/Library/Python/2.7/site-packages/twisted/__init__.py", line 37, in 
_checkRequirements 
    raise ImportError(required + ": no module named zope.interface.") ImportError: Twisted requires zope.interface 3.6.0 or later: no module 
named zope.interface. 

Мой первый предположение было бежать pip install zope.interface

К сожалению, все, что я получаю от этого:

Requirement already satisfied (use --upgrade to upgrade): 
zope.interface in 
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python 
Requirement already satisfied (use --upgrade to upgrade): setuptools 
in 
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python 
(from zope.interface) 

Я также попытался easy_install zope.interface

Но что дает аналогичные результаты:

Searching for zope.interface 
Best match: zope.interface 4.1.1 
zope.interface 4.1.1 is already the active version in easy-install.pth 

Using /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python 
Processing dependencies for zope.interface 
Finished processing dependencies for zope.interface 

Поскольку, по-видимому синец установлен на моей машине, я имею в виду, что проблема может быть связана с установленным мной python. Я установил Python3 с пивом в начале этого года, и я думаю, что я, возможно, испортил конфигурацию python. Есть идеи?

Update по умолчанию питон, который на макинтош должен работать на все, что я пытался сделать выше, я проверил это на другой компьютер Mac. Проблема, с которой я столкнулась, заключалась в том, что я испортил мой образ python по умолчанию, который появился с моим mac. Следуя приведенной ниже статье, я смог снова создать рабочий виртуальный диск для моего питона.

ответ

2

Вы должны сделать все свои работы на Python в virtualenv. Если бы вы разработали новую виртуальную версию для своей разработки Twisted и всегда активировали ее перед ее работой, у вас был бы намного более жесткий контроль над тем, что будет установлено, и было бы намного легче диагностировать проблемы. Поэтому, пожалуйста, создайте новый virtualenv и pip install twisted, и тогда эта проблема должна исчезнуть.

+0

Спасибо за совет, однако, я серьезно подумываю, прежде чем настраивать все, возвращаясь в чистое состояние. Если я переустановил мой OSX, он снова заново установит для меня версию python для Mac? Я серьезно испортил свою конфигурацию, пытаясь удалить python из usr/bin (я могу не устанавливать виртуальную машину без какой-либо версии python, а моя текущая версия очень мертва), поэтому я хотел бы вернуться к тому, что приходит с ОС. Будет ли это работать без удаления всех моих файлов? Или мне нужно полностью очистить, чтобы исправить это. – Unome

+2

Я смог получить все, используя virtualenv, как это предложил Глиф. В этом руководстве объяснялись гайки и болты о том, что делать и отлично работали http://docs.python-guide.org/en/latest/dev/virtualenvs/ – Unome

+0

Если вы удалили * что-либо * из '/ usr' или'/System/', то да, пришло время переустановить вашу операционную систему. * Никогда * не прикасайтесь к этим каталогам на Mac. (К счастью, на скоро появляющемся El Capitan, даже не root может удалять файлы из этих мест.) – Glyph