关于在anaconda中虚拟环境已配置好tensorflow但在jupyter notebook中出现No module named ‘tensorflow’问题解决方法
首先描述一下问题的来源
本打算开始学习运行一些机器学习基础代码,下载好anaconda后打开jupyter notebook,第一句运行
import tensorflow as tf
结果报错
No module named ‘tensorflow'
这个时候的问题在于没有安装tensorflow,遂找相关博客
完成虚拟环境python、tensorflow相关配置后(具体可参考下方参考)
在anaconda prompt中(如图)虚拟环境下python和tensorflow都是正常的(PS:python版本为3.7.16,tensorflow版本为2.1)
但是!问题出现了,在这个情况下启动jupyter notebook,按照道理是没有问题的,结果运行后,还是报错(如图)
迷茫,各种迷茫。
当然最后找到问题,简单来说就是jupyther notebook里使用的python不是虚拟环境里装了tensorflow的python
解决方法如下
1、检查是否和我问题相同
在终端和页面分别输入
import sys
sys.executable
如图,若路径不同,说明与我问题相同
2、在终端查看内核
jupyter kernelspec list
若是第一次使用应该只有一项,因此我们要将虚拟环境中的内核也加入
3、添加内核
python -m ipykernel install --user --name "环境名称" --display-name "想要命名的Python名称"
如,我的就是
python -m ipykernel install --user --name TF2.1 --display-name TF2.1_python
如果出现报错
No module named 'ipykernel'
表示ipykernel模块也没安装
加一句
pip install ipykernel
即可
完成后可再次查看内核
jupyter kernelspec list
4、切换内核
最后我们打开jupyter notebook,即可切换我们刚添加的内核
5、运行成功
切换后,如图,运行成功
参考:
Tensorflow学习笔记①——Pycharm中的Tensorflow2.1安装教程(小白版本)
windows终端可以import tensorflow,jupyter不可以的解决办法