在虚拟环境中安装 ipykernel 和 运行 jupyter notebook - 不使用 conda

Installing a ipykernel and running jupyter notebook inside a virtual env - not using conda

我在尝试 solve/debug 这个问题时遇到了死胡同,这似乎不应该那么困难。

我在 Pycharm IDE(不是专业人士)工作,我在虚拟环境中工作,我们称之为 pythonProject,我希望能够 运行 在此环境中启动一个 jupyter notebook,以便它可以获取我为此环境安装和配置的所有 python 包。

据我从 documentation 中了解到,这些是我需要采取的步骤。

我的终端提示语句:

(pythonProject) oliver@oliver-u20:~/pythonProject$

命令:

python3 -m pip install ipykernel
python3 -m pip install notebook
python3 -m ipykernel install --user --name pythonProject --display-name "Python (pythonProject)"
jupyter notebook

但是当我加载jupyter notebook时,它只在内核下显示python3

我试过输出 jupyter kernelspec list 并且只获得从 this 提示它没有找到我的内核规范的基本内核,但我似乎无法从 documentation 中弄清楚我应该做什么。

我是不是漏掉了什么?

好的,我已经解决了这个问题。

我认为 jupyter 存在安装问题。

我尝试在一个全新的项目和 venv 中重现它,可以显示内核。

在我仍然做不到的项目和 venv 中,我注意到 jupyter --paths

的输出存在差异

在工作环境中,我可以在 data 下看到 /home/oliver/.local/share/jupyter 这就是我安装的内核所在的位置。

然而,在那个不起作用的项目中,取而代之的是: /home/oliver/snap/jupyter/6/.local/share/jupyter

我猜这个 snap 路径来自于我最初通过应用商店在我的 Ubuntu 上安装 jupyter 的方式 - 当时看起来很明智。

所以我卸载了 jupyter,重新启动了我的 venv,jupyter --paths 发生了神奇的变化,因此 /home/oliver/.local/share/jupyter 存在,当我在命令行启动 jupyter notebook 时 jupyter notebook 我可以看到我所有的内核都显示出来了!

我发现使用文档和命令帮助输出很难调试,所以希望其他人发现它有用。