Python ImportError с Sage - PullRequest
       31

Python ImportError с Sage

0 голосов
/ 26 января 2012

Хорошо, я новичок в python и исследовал эту проблему, но я не могу найти ничего подобного, поэтому я не уверен, что происходит.

Я создаю программу, в которой задействован sage, и в ней есть сообщение.У нас это настроено на машине для разработки, поэтому я знаю, что она работает, но я хотел установить ее на своем собственном компьютере, чтобы я мог лучше понять, как все это работает, и упростить разработку для себя.

Чтобы запустить sage, мы запускаем скрипт, который вызывает sages основной двоичный файл и передает ему исполняемый файл .py.(./sage/sage ./sage_server.py) Это создает ошибку в файле sage_server.py:

Traceback (most recent call last):
  File "./sage_server.py", line 23, in <module>
    from carrot.messaging import Publisher
ImportError: No module named carrot.messaging

Но всякий раз, когда я запускаю этот файл только в терминале (./sage_server), импорт работаетхорошо, и только в строке 27 возникает ошибка, когда он пытается импортировать что-то из sage.

Кто-нибудь знает, что может вызвать ошибку, когда она вызывается чем-то другим?Я очень растерялся относительно того, что могло бы вызвать это.

1 Ответ

1 голос
/ 26 января 2012

Sage имеет свой собственный питон, отдельный от системных библиотек. Этот «морковный» модуль, каким бы он ни был, должен быть установлен в любом используемом Python ./sage_server.py, но не в Sage.

Вы можете использовать либо

[your-sage] -sh

, чтобы запустить оболочку Sage и использовать easy_install, или вы можете получить любой пакет carroty, который вы используете, найти его файл setup.py и запустить

[your-sage] -python setup.py install

где, очевидно, твой мудрец - это путь к твоему мудрецу.

Все становится немного сложнее, если процесс установки не основан на setup.py.

...