zl程序教程

您现在的位置是:首页 >  系统

当前栏目

ubuntu 下 jupyter 找不到模块的问题

模块Ubuntu 不到 Jupyter 问题
2023-09-11 14:21:25 时间

虚拟机中的Ubuntu安装了jupyter,提示找不到模块
在这里插入图片描述
但是实际上pip3 list可以看到这个模块,而且相同的脚本在终端命令行python3下可以运行。在jupyter的右上角可以看到使用的就是python3这个kernel:
在这里插入图片描述
于是先查找两个系统的python3分别在哪里:

终端命令行中的python

$ which python3
#返回如下内容
/usr/bin/python3

在这里插入图片描述

或者在python交互界面输入

import sys
sys.executable

在这里插入图片描述

jupyter中的python

在这里插入图片描述
这两个python显然不一样。
然后我回想当时先用pip安装juypter完成之后,我运行了jupyter notebook --generate-config报错:
在这里插入图片描述
当时我就又通过sudo snap install jupyter又安装了一遍。所以jupyter跑的就是snap安装的那个jupyter自带的python。
在这里插入图片描述

然而此时查看/home/parallels/.local/share/jupyter/kernels/python3/kernel.json文件却还是/usr/bin/python3
在这里插入图片描述

解决方案:

卸载snap安装的jupyter即可。一切就顺利了。

snap remove jupyter

然后再运行jupyter notebook,就正常了,右上角显示如下图:
在这里插入图片描述
代码运行正常, sys.executable返回/usr/bin/python3
在这里插入图片描述

注:

  1. PD安装的Ubuntu20自带python3,但是无python2。默认pip和pip3指向同一个位置。
  2. 实际上我是用了pyenv来管理python版本,这里我把pyenv的默认python指向了system的python3。为了简化描述,我没有在正文中提及,并对返回的内容进行了些许修改,但是使用pyenv+jupyter是没问题的。