运行 PtPython 时出现“ImportError:无法导入名称 PathCompleter”

运行 PtPython 时出现“ImportError:无法导入名称 PathCompleter”

我想使用 ptipython 来运行 Web 驱动程序。

因此我首先使用 安装了 iPython pip install ipython,然后以同样的方式安装了 ptipython。我遇到了一些 prompt-toolkit 版本问题,但不知怎么地我解决了它们。

现在,当我运行 ipython 时,它启动没有任何问题,但是当我运行 ptipython 时,我收到以下错误:

Traceback (most recent call last):
  File "/usr/local/bin/ptipython", line 11, in <module>
    sys.exit(run())
  File "/usr/local/lib/python2.7/dist-packages/ptpython/entry_points/run_ptipython.py", line 41, in run
    from ptpython.ipython import embed
  File "/usr/local/lib/python2.7/dist-packages/ptpython/ipython.py", line 14, in <module>
    from prompt_toolkit.completion import PathCompleter, WordCompleter
ImportError: cannot import name PathCompleter

我怎样才能解决这个问题?

答案1

您不需要导致错误消息的 ptipython,只需要 ptpython。打开终端并输入:

sudo pip uninstall ptipython ipython  
sudo apt install ipython
python -m pip install --user ptpython

或者,你可以使用 Python 3 而不是 Python 2.7 来执行此操作,方法是安装 python3-ipython 而不是 python-ipython,或者你可以同时安装两个 ipython 包sudo apt install python-ipython python3-ipython

答案2

我需要用 pip 从我的系统中删除它sudo pip uninstall ptpython,然后仅在我使用的虚拟环境中安装它。然后错误就消失了。

相关内容