Jedi - ImportError:无法导入名称'traverse_parents'

<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 中重新安装它(嘿,这可能会实现前一点)

我已经在网上搜索了这个问题的答案,但我一无所获。有没有人经历过类似的事情并设法解决了?

欢迎任何建议。



BIG阳
浏览 90回答 1
1回答

桃花长相依

已修复: 我使用以下命令通过 pip 重新安装了最新版本的 jedi:pip3 install -e git://github.com/davidhalter/jedi.git#egg=jedi现在,该命令import jedi不会产生任何异常,它似乎在 Neovim 中工作正常。安装默认版本时生成 ImportError 的原因pip3 install jedi超出了我的猜测。也许这个版本本身有问题,也许是我的 python 环境的一些怪癖......
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python