Jupyter Notebook 下 import 第三方库,显示 no module xxx 【本质是环境没有切换过来】
1.最简单情况下 切换环境即可
首先激活环境:
activate env # 激活你的环境名称
jupyter notebook
之后去运行代码即可,如果还不行请看下面:
2、遇到Jupyter Notebook运行指定的conda虚拟环境
2.1 原因分析
看一下当前环境路径:发现是默认安装conda下的路径,不是我们想要的虚拟环境
import sys
sys.executable
sys.executable
可以发现我们之前在jupyter添加的环境只是添加了一个空壳,并没有改变内核,使用的还是主环境的python。因此我们一定要在我们创建的环境中执行添加命令。
在博客中看到的很多把虚拟环境添加jupyter中的操作流程如下:
1、在base环境中安装ipykernel pip install ipykernel 2、创建虚拟环境、同时添加ipykernel conda create -n env_name python=3.5 ipykernel 3、切换到虚拟环境 conda activate env_name 4、将环境写入notebook的ipykernel中 python -m ipykernel install --user --name env_name --display-name "在jupyter中显示的环境名称"
上面的安装过程确实可以实现将虚拟环境加入到juyter中,但是由于是在base中安装的ipykernel,或者忘记激活虚拟环境,或者由于实在base中安装的ipykernel,导致无法在激活的虚拟环境中使用 -m ipykernel,很多人直接在base中执行命令4,导致加入到jupyter的虚拟环境的python编译器使用的是base的,因此导致了上述问题。【不推荐】
2.2 解决方案一:
直接切换至虚拟环境(命令如上),安装ipykernel后,再执行命令4,结果如图所示,可以看到编译路径已经切换至虚拟环境所在路径:
安装nb_conda可以在jupyter中手动切换内核----虚拟环境
conda install nb_conda
安装成功后重新启动Jupyter,当创建新的Python文件时,也会提示要根据那个Kernel创建。
同时也可以在kernel选项中更改当前使用的环境。
首先激活环境:
activate 环境名称
#activate KG
安装ipykernel
pip install ipykernel
环境导入jupyter
python -m ipykernel install --user --name 环境名称 --display-name "在jupyter中显示的环境名称"
#python -m ipykernel install --user --name KG --display-name "KG"
验证一下,完成:路径变回我们的虚拟环境了
2.3 解决方案二
通过修改/home/shy/.local/share/jupyter/kernels/py_work/kernel.json文件来解决上述问题。
{
"argv": [
#原来为"/usr/bin/python3"
"/home/shy/.virtualenvs/py_work/bin/python3",#修改为我们环境的python路径即可
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "py_work",
"language": "python",
"metadata": {
"debugger": true
}
}
相关文章
- 时间工具类
- 网络编程学习笔记2-ttcp
- 怎样使用摄像机-新手使用摄像机注意事项有哪些 摄像机使用注意事项【介绍】
- 网络编程学习笔记3-阻塞IO下的ttcp
- 键盘代码表-谷歌,新型的摩尔斯代码键盘,对部分残疾人而言,有着重大意义
- 个人对hashMap的部分理解
- 网络编程学习笔记4-Roundtrip代码分析
- selenium最大化浏览器-Selenium启动常用浏览器
- RabbitMQ集群搭建
- 网络编程学习笔记6-TCP正确使用
- centos docker搭建ELK
- 网络编程学习笔记7-TCP使用的注意事项(附代码)
- java app支付宝支付
- java番外茶余饭后闲聊
- Java编程之学习技巧
- Java学习路线
- Java一次返回中国所有省市区三级树形级联+前端vue展示【200ms内】
- JDK自带javap命令反编译class文件和Jad反编译class文件(推荐使用jad)
- 力扣算法经典第一题——两数之和(Java两种方式实现)
- Java中使用DOM4J来生成xml文件和解析xml文件