Komodo Edit在脚本执行时无法识别Python包,但会在自动完成中识别它们



我正在尝试设置Komodo编辑以在运行Mavericks的新Mac上运行Python脚本。我安装了ActiveState版本的Python(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),我可以从终端使用这些软件包运行脚本;但是,当我从Komodo Edit执行Python解释器时,我得到以下结果:

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编辑GUI(首选项-->语言--> Python)输入了它,我包含的路径/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages似乎被截断了。这可能是问题所在吗?

您要查找的站点包文件夹不在"/System"下,而是在"/Library"下。 尝试@martineau所说的内容,但从路径中删除"/System"。

import sys
sys.path.append('/Library/Frameworks/Python.framework/Versions/2.7/lib/p‌​ython2.7/site-packages')
# cross fingers
import bitarray

最新更新