ошибка импорта библиотеки curses pypy - PullRequest
1 голос
/ 12 февраля 2011

Я использовал pypy 1.4, который, как говорят, полностью совместим с cpython 2.5, но когда я пытаюсь импортировать модуль curses, я получаю ошибку импорта evn, хотя модуль curses доступен. Есть какие-нибудь указатели, почему это может происходить?

Ответы [ 2 ]

3 голосов
/ 12 февраля 2011

Модуль Python curses использует модуль _curses C. Страница PyPy Python совместимости говорит следующее (с акцентами, подчеркнутыми мной):

PyPy реализует язык Python версии 2.5. Он поддерживает весь основной язык, проходя тестовый набор Python (с небольшими изменениями, которые уже были приняты в основном python в более новых версиях). Он поддерживает большинство наиболее часто используемых модулей стандартной библиотеки Python; подробности ниже.

PyPy имеет поддержку альфа-уровня для CPython C API, однако на момент выпуска 1.4.1 эта функция еще не завершена. Большинству библиотек потребуется немного усилий для работы, но есть известные истории успеха. Следите за обновлениями в блоге PyPy.

C extensions нужно перекомпилировать для PyPy для работы. В зависимости от вашей системы сборки, она может работать "из коробки" или будет немного сложнее. Чтобы указать pypy для загрузить расширение CPython (скомпилировано с прилагаемым Python.h), запустите следующую строку:

import cpyext

Далее на этой странице представлен список стандартных библиотечных модулей, поддерживаемых PyPy. Я не вижу curses там, хотя есть _minimal_curses, который может быть полезным для вас.

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