最近在搞sclearn kit库,用命令行build太麻烦,就直接用Sublime2来build,但发现build时总是出现sclearn模块找不到的情况,但的确已经通过pip install 了相关包,最后发现是sublime2里配置的Python setting 路径也需要配置PYTHONPATH变量来指出module的路径。
-问题场景
按照sclearn安装页的指示,安装了必要的package后,在sublime2中通过`cmd + B`来build后出现了如下错误:
但我用python命令行import是没问题的。
- 原因分析
需要在Python.sublime-build中设置env变量。Google了一些可能的答案,发现上面的错误是由于sublime2中默认的python模块的路径中找不到sclearn模块,而控制模块查找路径的则是$PYTHONPATH变量而非$PATH变量。且sublime2 GUI是通过自己的python设置文件查找变量的,很多建议在.profile, .zshrc等命令行配置文件中加上PYTHOINPATH变量的其实是不能工作的。solution则是:Click Sublime2 Text 2菜单,进入Preference/Browse Packages/Python文件夹,编辑Python.sublime-build文件在其中加上:
保存即可。贴一个build之后生成的分类器比较照片,对于理解不同分类器很有帮组。
-参考
[1] Stackoverflow
[2] How to specify which Python version