gpt4 book ai didi

python - emacs python Elpy 自动完成不适用于所有人

转载 作者:行者123 更新时间:2023-12-01 01:57:23 25 4
gpt4 key购买 nike

使用 Mac OSC 10.13.4、emacs 25.3 (9.0)、Python3

我可能有一些 Elpy 自动完成功能适用于 python3,但由于某种原因,并不总是如此。
例如,

numpy.

触发自动完成,但是,

pandas.

没有。

我的直觉是,虽然 numpy 是 python3 的标准配置,但 pandas 却不是。所以我需要让 emacs 指向附加模块所在的目录。简而言之,emacs 不使用与 python3 相同的路径...我尝试向当前的 emacs 路径添加路径,但总是无法附加这些路径。我怎样才能做到这一点?

Numpy gets autocompletion but pandas does not

最佳答案

问题几乎可以肯定是 elpy 使用的 Python 与您认为的不同。

由于您使用的是 macOS,因此您至少还有另一个 Python,即 Apple 在 /usr/bin/python 中预安装的 Python 2.7 版本。在大多数版本的 macOS 中,这包括一个特殊的“Extras”目录,其中包含通常不内置于 Python 的内容,其中包括 numpy,但不包括 pandas,在某些版本中甚至不是 pip

因此,您的 pip show numpypip show pandas 使用的是 Python 3.5 pip,因为这是唯一的 pip 你有。

但是,如果 elpy 正在查找 Apple 的 Python 2.7 而不是您安装的 Python 3.5,它将查找 Extras numpy 并且不会查找任何 pandas.

您还应该看到其他奇怪的错误行为,例如 elpy 尝试将 print 作为 Python 2.x 语句而不是 Python 3.x 函数来完成,但这是最简单的诊断问题的方法不是深入研究所有这些细节,而只是 M-x elpy-config。它应该显示如下内容:

Virtualenv........: None
RPC Python........: 2.7.10 (/usr/bin/python)
Interactive Python: python (/usr/bin/python)
Emacs.............: 25.3.0

...等等

如果是这样,答案是您需要修复elpy配置以使用/usr/local/bin/python3(或者任何适当的路径到您的Python 3.5)。

我相信只要配置elpy-rpc-python-command就会使它正确地获取其他所有内容。或者您可以从 elpy-config 本身内部完成此操作。但这对于emacs.SE来说可能是一个更好的问题。比 SO 上的 Python 标签更重要。

关于python - emacs python Elpy 自动完成不适用于所有人,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50007537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com