【问题标题】:Jupyter error: "No module named jupyter_core.paths"Jupyter 错误:“没有名为 jupyter_core.paths 的模块”
【发布时间】:2016-07-28 17:29:03
【问题描述】:

尝试打开 Jupyter Notebook (OSX 10.11.4) 我收到以下错误:

$ jupyter-notebook
Traceback (most recent call last):
  File "/usr/local/bin/jupyter-notebook", line 7, in <module>
    from notebook.notebookapp import main
  File "/Users/geotheory/Library/Python/2.7/lib/python/site-packages/notebook/__init__.py", line 25, in <module>
    from .nbextensions import install_nbextension
  File "/Users/geotheory/Library/Python/2.7/lib/python/site-packages/notebook/nbextensions.py", line 23, in <module>
    from jupyter_core.paths import jupyter_data_dir, jupyter_path, SYSTEM_JUPYTER_PATH
ImportError: No module named jupyter_core.paths

这曾经有效。知道如何诊断吗?

【问题讨论】:

标签: python jupyter jupyter-notebook


【解决方案1】:

我遇到了同样的问题,只需在 macOS 终端中使用 pip install jupyter 即可解决。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,并且能够通过以下步骤解决。

    conda create -n py36 python=3.6
    conda activate py36
    conda install notebook ipykernel jupyterlab
    
    

    【讨论】:

      【解决方案3】:

      我也遇到过类似的问题。基本上,我通过卸载 python2.7 并重新安装较新的 python 和 IPython 版本来解决它。

      关于如何通过 Mac OS 命令行有效卸载 python2.7 的详细信息在这里:How to uninstall Python 2.7 on a Mac OS X 10.6.4?

      通过命令行重新安装所需版本的 IPython。就我而言,我还需要通过以下方式重新安装 Jupyter:

      $ pip install jupyter
      

      祝你好运。

      【讨论】:

      • 我知道这是一个较旧的答案,但告诉人们卸载 python2 并不是一个好的解决方案 - 有足够多的程序仍然需要它。在我的情况下,重新安装 jupyter 确实有帮助,而无需删除 python2
      【解决方案4】:

      如果您使用的是 Anaconda,我建议您使用以下方法将 Jupyter 安装到您的 conda 环境中:

      conda install -c anaconda jupyter
      

      然后您可以使用以下命令从终端启动 Jupyter:

      jupyter notebook .
      

      【讨论】:

      • 是的,这是我现在的设置。
      【解决方案5】:

      今天早上我遇到了类似的问题。当我更改了 bash_profile 中的 $PYTHONPATH 目录时。然后我通过将python路径重新指定回/usr/lib/python2.*来解决。我希望它会有所帮助。

      【讨论】:

        【解决方案6】:

        在我的情况下,这是因为使用 sudo 运行的 pip 没有对其在 /usr/local/lib/python2.7/dist-packages 下创建的文件和目录设置读取和执行权限。

        所以我使用 find 和 chmod 来设置它们,如 there 所述:

        cd /usr/local/lib/python2.7/dist-packages
        sudo find ./ -type d -exec chmod a+rx {} \;
        sudo find ./ -type f -exec chmod a+r {} \;
        

        其实sudo的这种行为可能源于我的标准用户umask是0007(默认创建私有文件)。这似乎转移到sudo。为避免这种情况,可以通过运行 sudo visudo 并添加以下行来编辑 sudo 配置,如 this answer

        Defaults umask_override
        Defaults umask=0022
        

        【讨论】:

        • 虽然理论上可以回答这个问题,但最好在此处包含答案的基本部分,并提供链接以供参考。
        【解决方案7】:

        (虽然参加聚会已经很晚了,但是)您提到了'it used to work',从您的提示看来,您似乎不在“虚拟环境”中。只需激活适当的虚拟环境,让它像以前一样工作。

        【讨论】:

          【解决方案8】:

          在我的环境处于活动状态时使用 pip install jupyter 为我工作

          【讨论】:

            【解决方案9】:

            当您的系统中有多个版本的Python 时会发生这种情况。尝试通过查看 'pip' 目录找到正确的版本:

            which pip
            

            对我来说,它位于:

            ~/bulk/Python/python-3.7.4/bin/
            

            在那里,您应该能够找到jupyter 可执行文件:

            $ ls jupyter
            jupyter
            

            尝试通过以下方式直接运行它:

            ./jupyter
            

            希望这会有所帮助。

            【讨论】:

              【解决方案10】:

              从 ubuntu 中的 sudo 组中删除用户后遇到类似问题并已修复。

              sudo deluser my_user sudo
              

              【讨论】:

              • 这可能很危险,例如一个人会从 sudo 中删除他的(唯一的用户),同时忘记他的 root 帐户的密码,然后对操作系统的管理访问权限将不可挽回地丢失
              • 尽量避免使用 sudo 提出解决方案,因为这是用户的问题,而不是管理员的问题。
              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2020-03-05
              • 2018-10-09
              • 2019-12-16
              • 2016-11-08
              • 2018-10-21
              • 2019-08-05
              相关资源
              最近更新 更多