iPython 给出意外关键字参数的错误 'inputhook'

iPython gives error for unexpected keyword argument 'inputhook'

我使用 Miniconda 在新的 Mac 上安装了 Python 3,并进行了以下设置:

当我尝试在终端中 运行 iPython 时,我收到以下错误:

Traceback (most recent call last):
  File "/Users/g72/miniconda3/bin/ipython", line 11, in <module>
    sys.exit(start_ipython())
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/IPython/__init__.py", line 125, in start_ipython
    return launch_new_instance(argv=argv, **kwargs)
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/traitlets/config/application.py", line 663, in launch_instance
    app.initialize(argv)
  File "</Users/g72/miniconda3/lib/python3.7/site-packages/decorator.py:decorator-gen-113>", line 2, in initialize
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/traitlets/config/application.py", line 87, in catch_config_error
    return method(app, *args, **kwargs)
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/IPython/terminal/ipapp.py", line 317, in initialize
    self.init_shell()
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/IPython/terminal/ipapp.py", line 333, in init_shell
    ipython_dir=self.ipython_dir, user_ns=self.user_ns)
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/traitlets/config/configurable.py", line 412, in instance
    inst = cls(*args, **kwargs)
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/IPython/terminal/interactiveshell.py", line 464, in __init__
    self.init_prompt_toolkit_cli()
  File "/Users/g72/miniconda3/lib/python3.7/site-packages/IPython/terminal/interactiveshell.py", line 296, in init_prompt_toolkit_cli
    **self._extra_prompt_options())
TypeError: __init__() got an unexpected keyword argument 'inputhook'

If you suspect this is an IPython bug, please report it at:
    https://github.com/ipython/ipython/issues
or send an email to the mailing list at ipython-dev@python.org

You can print a more detailed traceback right now with "%tb", or use "%debug"
to interactively debug it.

Extra-detailed tracebacks for bug-reporting purposes can be enabled via:
    c.Application.verbose_crash=True

该错误似乎与 __init__() 方法关键字参数 'inputhook' 有关。关于如何解决这个问题有什么建议吗?

可能是这个问题,或者一个新的相关问题,因为它应该被修复:https://github.com/ipython/ipython/issues/11962

降级 prompt_toolkit 对我们有效:conda install prompt_toolkit==2.0.10

编辑: 如果可能!

使用小于或等于 7.9.0 的 IPython 版本时会发生此错误。因此,更好的选择是将您的 IPython shell 升级到版本 ipython-7.10.1,这也解决了问题:

$ conda update ipython