YouCompleteMe/Python可以完成内置libs,但不能完成sitepackage

2024-06-26 02:16:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚安装了ycm,一切看起来都很好,但我发现了小问题。问题如下:

import os    # os is built-in library
os.          # ycm helps to complete members of the class.
import numpy # numpy is not built-in library, where its location is site-packages. 
numpy.       # nothing happened. ycm shows 'pattern not found' message.

我想,这是个简单的问题。但我还没找到解决办法。我想,有一些配置文件可以在其中为我的项目定义“搜索路径”。在

如果我能找到解决问题的办法,我将不胜感激。在

最好的

宋杰勋


Tags: ofthetoinimportnumpyisos
2条回答

numpy是一个有点困难的库,因为它在导入时动态地构建其命名空间,使得静态代码分析工具很难知道在编写代码时应该有哪些可用的名称。因为名称空间numpy中可用的名称只有在运行时才真正知道,YCM可能没有任何有用的建议。在

我对模块“mpmath”也有相同的问题,并通过以下方式进行了修复: 首先,我检索到模块所在的路径:

%python3
>>>import mpmath
>>>print(mpmath.__file__)
/usr/lib/python3.4/site-packages/mpmath/__init__.py

在这里,我发现所有“已安装”python3包的路径是:

^{pr2}$

然后我简单地在PYTHONPATH环境变量中添加以下路径:

%export PYTHONPATH=/usr/lib/python3.4/site-packages/

然后当我使用vim sample.py键入import mpmath并随后使用mpmath.时,YCM向我展示了mpmath模块的所有自动完成。在

希望这有帮助。在

相关问题 更多 >