Homebrew 升级后 Jupyter Notebook 模块错误
Jupyter Notebook ModuleError after Homebrew Upgrade
我使用 Jupyter 已经有一段时间了,它运行得很好。我通过 Homebrew 安装了 Jupyter 和 Python。我在 MacOS 上 运行。
昨天,我 运行 命令 brew upgrade
现在我的 Jupyter notebook 找不到任何已安装的 python 包。我将使用 Numpy 作为示例。
当在 Jupyter notebook 中时,我尝试做
import numpy
我收到消息:
ModuleNotFoundError: No module named 'numpy'
但是,如果我在终端 window 中启动 python,那么我可以毫无问题地导入 Numpy。
我首先通过重新发出安装命令检查包是否正确安装
brew install numpy
输出:
Warning: numpy 1.18.4 is already installed and up-to-date
To reinstall 1.18.4, run `brew reinstall numpy`
我也运行
pip install numpy
并得到:
Requirement already satisfied: numpy in /usr/local/lib/python3.7/site-packages (1.18.4)
现在,这就是我感到困惑的地方,因为我希望路径指向类似 /usr/local/Cellar/
的东西,所以我检查了 Jupyter notebook 中的路径:
import sys
sys.path
输出:
['/Users/kseuro/Dropbox/Dev/',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python38.zip',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8/lib-dynload',
'/usr/local/opt/python@3.8/Frameworks/Python.framework/Versions/3.8/lib/python3.8',
'',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8/site-packages',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8/site-packages/IPython/extensions',
'/Users/kseuro/.ipython']
好的,所以 Homebrew 希望 Jupyter 使用 Python3.8?所以我尝试了 brew switch python 3.8
并得到:
Error: python does not have a version "3.8" in the Cellar.
python's installed versions: 3.7.7
我觉得我现在力不从心,需要帮助弄清楚下一步该怎么做。我不想从改变路径开始。
建议?非常感谢。
我想出了该怎么做 — 为未来的我和可能偶然发现此问题的其他人发布解决方案。
由于 Jupyerlab 在其自己的 Cellar 中,Python 包需要在
中结束
/usr/local/Cellar/jupyterlab/x.y.z/libexec/lib/python3.x/site-packages
目录,其中 x, y, z
是整数,以便 Jupyter 内核可以找到它们。
您可以通过以下方式完成此操作:
import sys
!{sys.executable} -m pip install 'package-name'
Jupyer 笔记本内部。
再次一切安好。
我使用 Jupyter 已经有一段时间了,它运行得很好。我通过 Homebrew 安装了 Jupyter 和 Python。我在 MacOS 上 运行。
昨天,我 运行 命令 brew upgrade
现在我的 Jupyter notebook 找不到任何已安装的 python 包。我将使用 Numpy 作为示例。
当在 Jupyter notebook 中时,我尝试做
import numpy
我收到消息:
ModuleNotFoundError: No module named 'numpy'
但是,如果我在终端 window 中启动 python,那么我可以毫无问题地导入 Numpy。
我首先通过重新发出安装命令检查包是否正确安装
brew install numpy
输出:
Warning: numpy 1.18.4 is already installed and up-to-date
To reinstall 1.18.4, run `brew reinstall numpy`
我也运行
pip install numpy
并得到:
Requirement already satisfied: numpy in /usr/local/lib/python3.7/site-packages (1.18.4)
现在,这就是我感到困惑的地方,因为我希望路径指向类似 /usr/local/Cellar/
的东西,所以我检查了 Jupyter notebook 中的路径:
import sys
sys.path
输出:
['/Users/kseuro/Dropbox/Dev/',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python38.zip',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8/lib-dynload',
'/usr/local/opt/python@3.8/Frameworks/Python.framework/Versions/3.8/lib/python3.8',
'',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8/site-packages',
'/usr/local/Cellar/jupyterlab/2.1.2/libexec/lib/python3.8/site-packages/IPython/extensions',
'/Users/kseuro/.ipython']
好的,所以 Homebrew 希望 Jupyter 使用 Python3.8?所以我尝试了 brew switch python 3.8
并得到:
Error: python does not have a version "3.8" in the Cellar.
python's installed versions: 3.7.7
我觉得我现在力不从心,需要帮助弄清楚下一步该怎么做。我不想从改变路径开始。
建议?非常感谢。
我想出了该怎么做 — 为未来的我和可能偶然发现此问题的其他人发布解决方案。
由于 Jupyerlab 在其自己的 Cellar 中,Python 包需要在
中结束/usr/local/Cellar/jupyterlab/x.y.z/libexec/lib/python3.x/site-packages
目录,其中 x, y, z
是整数,以便 Jupyter 内核可以找到它们。
您可以通过以下方式完成此操作:
import sys
!{sys.executable} -m pip install 'package-name'
Jupyer 笔记本内部。
再次一切安好。