【发布时间】:2020-11-29 12:01:19
【问题描述】:
我正在尝试在 mac os 中为 Vim 设置 deoplete。对此的一个要求是安装pynvim,我使用pip3 install pynvim 完成了
现在在 Vim 中,:python3 import pynvim 会抛出错误 ImportError: No module named pynvim。然而,在 Vim 之外,pip3 list 列出了包 pynvim。我不明白这里出了什么问题。
我收集了一些信息,据此我认为我应该能够获得一些帮助以防止出现此错误。
- 从 Vim,
:echo exepath('python3')返回/Library/Frameworks/Python.framework/Versions/3.6/bin/python3 - 来自 Vim,
python3 help('modules')没有列出包pynvim。这里有趣的是python3 help('modules')还显示了一个警告/usr/local/opt/python@3.8/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/setuptools/distutils_patch.py:25: UserWarning: Distutils was imported before Setuptools. This usage is discou raged and may exhibit undesirable behaviors or errors. Please use Setuptools' objects directly or at least import Setuptools first.从这个警告中,我们可以看到 Vim 环境使用的是 python3.8 而不是 python3.6,这与从echo exepath('python3')返回的内容冲突 -
pip3 -V返回pip 20.2.1 from /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pip (python 3.6) -
ls -l /usr/local/bin/python*显示
/usr/local/bin/python -> /usr/local/bin/python3.6
/usr/local/bin/python3 -> ../Cellar/python@3.8/3.8.5/bin/python3
/usr/local/bin/python3-config -> ../Cellar/python@3.8/3.8.5/bin/python3-config
/usr/local/bin/python3.6 -> ../../../Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6
/usr/local/bin/python3.6-config -> ../../../Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6-config
/usr/local/bin/python3.6m -> ../../../Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6m
/usr/local/bin/python3.6m-config -> ../../../Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6m-config
/usr/local/bin/python3.8 -> ../Cellar/python@3.8/3.8.5/bin/python3.8
/usr/local/bin/python3.8-config -> ../Cellar/python@3.8/3.8.5/bin/python3.8-config
看起来我的 mac 上的多个 Python 版本搞砸了。如何摆脱这种混乱并防止 Vim 错误?
【问题讨论】:
标签: python python-3.x linux macos vim