当我尝试在ST3中使用python构建时,我在尝试执行时遇到导入错误
import caffe
但当我只是在终端上跑,输入
$ python
>>> import caffe
它有效。在我的崇高文本3上,我仍然可以导入其他模块,如numpy和matplotlib。
这是我找到的崇高的python构建(这是正确的位置吗?为什么它没有被提取出来而是在包中?): 目录是:/opt/sublime_text/Packages/Python.sublime-package
和Python.sublime-package中的文件python.sublime-build是:
{
"shell_cmd": "python -u \"$file\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"env": {"PYTHONIOENCODING": "utf-8"},
"variants":
[
{
"name": "Syntax Check",
"shell_cmd": "python -m py_compile \"${file}\"",
}
]
}
检查了我的python路径之后:
$ python -c "import sys; print '\n'.join(sys.path)"
我的输出是:
/home/user/caffe/python
/home/user
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages/PILcompat
/usr/lib/python2.7/dist-packages/gtk-2.0
/usr/lib/python2.7/dist-packages/wx-3.0-gtk2
我的dist-packages没有caffe,因为我在家里/用户安装了它。
所以我决定在终端跑:
export PYTHONPATH=/home/user/caffe/python:$PYTHONPATH
但是再次检查我的python路径,它似乎没有被添加。这是什么原因?但是,为什么我可以直接从我的终端导入caffe而不是ST3? PS:我确实为我的用户添加了caffe等bashrc个人资料。
感谢您的帮助。
答案 0 :(得分:1)
您可以在导入caffe
之前添加此项import sys
sys.path.insert(0, '/path_to_caffe_root/python')