pydev: неопределенная ошибка переменной при импорте скомпилированных модулей - PullRequest
3 голосов
/ 03 февраля 2011

Я хочу переключить свой python-IDE с бездействия на pydev (затмение). Я использую несколько модулей, которые у меня есть только как скомпилированный байт-код (* .pyc). В простое это никогда не было проблемой, и он даже предлагает завершение кода для этих скомпилированных модулей. Но pydev выдает мне много ошибок «неопределенных переменных», однако код интерпретируется правильно.

Есть ли способ, которым pydev может обрабатывать модули байт-кода, как это делает простоя? Возможно, без декомпиляции файлов?

1 Ответ

1 голос
/ 20 марта 2011

Попробуйте добавить модули как принудительные встроенные функции .

Для этого зайдите в Настройки & rarr; PyDev & rarr; Интерпретатор - (Python / Jython / IronPython как approriate), выберите используемый интерпретатор и добавьте его в список на вкладке Forced Builtins (. Подробнее см. Здесь ) .

(Обратите внимание, что вам может понадобиться или не быть нужно добавлять несколько записей для подпакетов и модулей; например, для правильной работы Fabric необходимо добавить как fabric, так и fabric.api)

Это заставляет PyDev загружать эти модули в интерпретатор для получения данных о завершении кода и проверке ошибок, а не просто анализировать исходный код.

Я не пробовал это для .pyc файлов, но он работает для других вещей, таких как импорт чего-то, что динамически генерируется скриптом __init__.py или чем-то (то есть тканью), так что это может работать для вас.

(см. Также этот FAQ и этот на сайте PyDev)

...