繁体   English   中英

为 Jupyter Notebook 安装 python3 时导入错误 kernel

[英]Import Error when installing python3 kernel for Jupyter Notebook

我的 jupyter notebook 的 python3 kernel 没有启动,所以我卸载了它。 然后我运行这些命令来创建一个新的 python3 kernel。

python3 -m pip install ipykernel
python3 -m ipykernel install --user

但是,运行python3 -m ipykernel install --user时出现错误。

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 183, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 142, in _get_module_details
    return _get_module_details(pkg_main_name, error)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 109, in _get_module_details
    __import__(pkg_name)
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/ipykernel/__init__.py", line 2, in <module>
    from .connect import *
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/ipykernel/connect.py", line 11, in <module>
    from IPython.core.profiledir import ProfileDir
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/IPython/__init__.py", line 56, in <module>
    from .terminal.embed import embed
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/IPython/terminal/embed.py", line 16, in <module>
    from IPython.terminal.interactiveshell import TerminalInteractiveShell
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/IPython/terminal/interactiveshell.py", line 19, in <module>
    from prompt_toolkit.enums import DEFAULT_BUFFER, EditingMode
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/prompt_toolkit/__init__.py", line 16, in <module>
    from .application import Application
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/prompt_toolkit/application/__init__.py", line 1, in <module>
    from .application import Application
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/prompt_toolkit/application/application.py", line 42, in <module>
    from prompt_toolkit.buffer import Buffer
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/prompt_toolkit/buffer.py", line 33, in <module>
    from .auto_suggest import AutoSuggest, Suggestion
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/prompt_toolkit/auto_suggest.py", line 19, in <module>
    from .document import Document
  File "/Users/user1/Library/Python/3.6/lib/python/site-packages/prompt_toolkit/document.py", line 8, in <module>
    from typing import (
ImportError: cannot import name 'NoReturn'

这与我在删除原始 python3 kernel 之前遇到的错误相同。 我该如何解决这个问题?

我通过卸载并重新安装 Anaconda 解决了这个问题。

似乎 python 版本有问题, Typing.NoReturn是 python 3.6.2 的新功能。 尝试安装较低版本的prompt-toolkit ,例如 2.0.10。 它对我有用:

python3 -m pip install prompt-toolkit==2.0.10

然后重试:

python3 -m ipykernel install --user

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM