0

我在 sublime 文本中安装了 SublimeCodeIntel 包,我用它在 python 3 中编码。但是,问题是它使用 python2 路径进行导入,所以如果一个库安装在 python2 中而不是 python3 中,我不会当我使用importor时找到它from X import y

我确实确认当我使用命令时SublimeCodeIntel: Dump Import Directories,我看到了文件pythonpython3目录./codeintel/import_dir_stats,这里有内容:

Python

dedeeb56f744e507026fef17243da41f /home/bilal/.local/lib/python2.7/site-packages
6a1d0cac3d9e6148e2208b63a33a1e6f /home/bilal/.local/lib/python2.7/site-packages/impacket
16a4fccbb3beadfdfd72691ef8f7298c /home/bilal/.local/lib/python2.7/site-packages/mechanize
211d2b55059f6b634799fdae534decd9 /usr/lib/python2.7/dist-packages
be5448890caffe81686310f127d6efae /usr/lib/python2.7/dist-packages/_markerlib
cec69a0830a725e10ac4e364d44add8f /usr/lib/python2.7/dist-packages/appindicator

蟒蛇3

dedeeb56f744e507026fef17243da41f /home/bilal/.local/lib/python2.7/site-packages
6a1d0cac3d9e6148e2208b63a33a1e6f /home/bilal/.local/lib/python2.7/site-packages/impacket
16a4fccbb3beadfdfd72691ef8f7298c /home/bilal/.local/lib/python2.7/site-packages/mechanize
211d2b55059f6b634799fdae534decd9 /usr/lib/python2.7/dist-packages
be5448890caffe81686310f127d6efae /usr/lib/python2.7/dist-packages/_markerlib
cec69a0830a725e10ac4e364d44add8f /usr/lib/python2.7/dist-packages/appindicator

我没有把所有的行(因为有很多),但是两个文件的内容是相同的。

我不明白这个问题是从哪里来的,为什么 SublimeCodeIntel 在 python2 目录中查找导入??!!

PS:我使用的是 Ubuntu 15.10(Linux 版本 > 4)和 sublime text 3 build 3103。

请帮忙,我真的花了很多时间和精力来寻找这个。

4

1 回答 1

0

我强烈建议使用Anaconda插件(与 Anaconda Python 发行版没有任何关系)而不是 SublimeCodeIntel。我在各种机器上与 SCI 斗争了一段时间,直到有一天我遇到了 Anaconda,我才能从中获得非常好的代码完成。第二天我移除了 SCI,从那以后我就完全满意了。它非常容易配置(只需给它你的 python 可执行文件的路径,它就会读取sys.path以及所有其他内容),而且几乎可以正常工作。它内置了几个不同的 linting(如果需要,可以禁用它们),具有可用于函数签名和其他提示的弹出窗口,可与开箱即用的 virtualenvs 一起使用,等等。

(我没有写它,我与作者没有任何联系 - 它只是一个很棒的插件!)

于 2016-02-28T00:09:11.183 回答