<TL;DR>在 python 3.6.8 中运行时,import jedi出现以下导入错误(完整回溯见文末):...from jedi.common import traverse_parents
ImportError: cannot import name 'traverse_parents'</TL;DR>我签入了~/.local/lib/python3.6/site-packages/jedi/common.py:有一个叫做traverse_parentsalright 的函数,所以肯定有一些巫术在起作用。这不是我第一次遇到那些“未定义的名称”问题之一,但我对这个问题已经没有想法了。已经尝试过:卸载、重新安装、升级 pip3 的“jedi”包其他几个名称中带有“绝地武士”的软件包的爵士乐几乎相同将 pip3 升级到 20.2.1 并重做相同的重新安装程序为 python2 安装 jedi 因为为什么不呢(嘿,它在 python2 中工作正常但谁在乎)还尝试从 apt-get 安装 python-jedi (之后我将其删除)古代巴比伦恶魔的咒语(无济于事,他们星期天不工作)关于如何修复它的模糊线索:从 github 获取最新版本的绝地武士并以某种方式安装它而不会弄得一团糟(机会难得)卸载 jedi 并从 Neovim 中重新安装它(嘿,这可能会实现前一点)我已经在网上搜索了这个问题的答案,但我一无所获。有没有人经历过类似的事情并设法解决了?欢迎任何建议。
1 回答
桃花长相依
TA贡献1860条经验 获得超8个赞
已修复: 我使用以下命令通过 pip 重新安装了最新版本的 jedi:
pip3 install -e git://github.com/davidhalter/jedi.git#egg=jedi
现在,该命令import jedi
不会产生任何异常,它似乎在 Neovim 中工作正常。
安装默认版本时生成 ImportError 的原因pip3 install jedi
超出了我的猜测。也许这个版本本身有问题,也许是我的 python 环境的一些怪癖......
添加回答
举报
0/150
提交
取消