komodo edit не распознает пакеты python при выполнении скрипта, но распознает их в автозаполнении
Я пытаюсь настроить Komodo edit для запуска скриптов Python на новом Mac под управлением Mavericks. Я установил версию Python ActiveState (ActivePython 2.7.5.6) и некоторые необходимые пакеты для:
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
Для установки пакетов я использовал pip (модуль установки pip), если это было возможно. В противном случае я бы использовал setup_tools и скрипт установки python, если первые два не сработали.
Автозаполнение Komodo Edit также распознает пакеты (например, bitarray, Pycluster), и я могу запускать сценарии с помощью этих пакетов из терминала; однако, когда я выполняю интерпретатор Python из Komodo Edit, я получаю следующее:
Traceback (most recent call last):
File "/Users/stevensteinway/Desktop/t-02.py", line 1, in <module>
import bitarray
ImportError: No module named bitarray
Под Предпочтениями -> Python я импортировал определенные каталоги, и это все еще не решает проблему:
`/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages`
`/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/bitarray`
У кого-нибудь есть идеи, почему это происходит и как это можно исправить?
Спасибо,
Стив
@martineau
Я включил следующий код:
import sys
print sys.path
и получил этот вывод:
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']
Последняя папка такая: /Library/Python/2.7/site-packages
но я думаю, что это должно быть так:
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages'
Я ввел его через графический редактор Komodo (Preferences -> Languages -> Python) и включил путь /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
кажется усеченным. Может ли это быть проблемой?
1 ответ
Папка site-packages, которую вы ищете, находится не в "/System", а в "/Library". Попробуйте то, что сказал @martineau, но удалите '/System' из пути.
import sys
sys.path.append('/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages')
# cross fingers
import bitarray