Pycharm 4 без модуля с именем ROOT, при импорте локально установленного модуля (PyROOT), который отлично работает из оболочки на Mac OS X Yosemite

Я пытаюсь настроить PyROOT для работы с Pycharm 4 на Mac OS X Yosemite.

Я установил ROOT (локально) с включенной опцией python и настроил все необходимые пути к окружению.

echo $PYTHONPATH
/Users/natalia/Software/root/lib:/Users/natalia/Software/root/bin:/Users/natalia/Software/root

Он отлично работает с интерпретатором оболочки:

python
Python 2.7.6 (default, Sep  9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ROOT
>>> ROOT.__file__
'/Users/natalia/Software/root/lib/ROOT.pyc'
>>>

В Pycharm я пытался добавить эти пути к интерпретатору, используя Настройки-> Проект-интерпретатор-> Еще-> Показать пути...

Пути, которые показывают, там следующие:

file:///Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg
file:///Users/natalia/Software/root/lib
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages
file:///System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
file:///System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC
file:///Library/Python/2.7/site-packages
file:///Users/natalia/Software/root/bin
file:///Users/natalia/Software/root

Я создал следующий файл в Pycharm:

import os
os.system("echo $PYTHONPATH")
import ROOT

При запуске он возвращает это:

Traceback (most recent call last):
/Users/natalia/Software:/Users/natalia/Software/root:/Users/natalia/Work/Projects/untitled
 File "/Users/natalia/Work/Projects/untitled/l.py", line 3, in <module>
    import ROOT
ImportError: No module named ROOT

Обратите внимание, что этот PYTHONPATH, который печатается из python в Pycharm, не включает (по неизвестной мне причине) путь, который фактически включает файл ROOT.pyc, а именно: /Users/natalia/Software/root/lib'

Я также попытался сделать подвох

os.system("export PYTHONPATH=$PYTHONPATH:/Users/natalia/Software/root/lib") 

но я обнаружил, что это на самом деле не меняет путь, если я печатаю его потом.

Я абсолютно сбит с толку относительно того, откуда Пихарм берет пути. Любые возможные решения будут приветствоваться и высоко ценится.

1 ответ

Решение

Возможно, вы уже поняли это, но на всякий случай...

import sys
sys.path.append('/Applications/Misc/root/lib')
import ROOT
print ROOT.TTimeStamp().AsString()

добавит этот путь поиска в Python (& PyCharm по расширению); фрагмент дает мне следующий вывод в PyCharm:

/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
/Users/rrios/PycharmProjects/untitled/dummy.py
Thu, 02 Jul 2015 01:07:57 UTC +628998000 nsec

Process finished with exit code 0
Другие вопросы по тегам