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
}
}

Jupyter Notebook 下 import 第三方库,显示 no module xxx 【本质是环境没有切换过来】的更多相关文章

  1. “jupyter notebook 不能导入python库但是终端上可以实现”的问题的解决

    在使用jupyter notebook的过程中,创建了一个新的环境(anaconda中env)后遇到了这样一个问题,就是: 在jupyter notebook上运行程序,中间发现有一个python库未 ...

  2. 【动手学深度学习】Jupyter notebook中 import mxnet出错

    问题描述 打开d2l-zh目录,使用jupyter notebook打开文件运行,import mxnet 出现无法导入mxnet模块的问题, 但是命令行运行是可以导入mxnet模块的. 原因: 激活 ...

  3. Win8.1 Anaconda下安装第三方库,以jieba wordcloud为例

    最近在看情感分析的东西,于是在spyder里import jieba,and then就报错了. 百度之后,发现jieba是一个第三方库,它并不存在于anaconda内置的packages中.所以在用 ...

  4. Jupyter Notebook 下安装 PHP 内核

    我最近被强烈安利了 Jupyter Notebook 这个交互式笔记本.然后试用了它自带的 Python 内核后,这个应用整体给我的感觉很不错,就去搜索了下它所支持的其它内核 Jupyter Kern ...

  5. Xcode7 下导入第三方库 图文介绍

    网上没有很好的图文介绍,干脆我自己写一个好了,方便新手入门. 这里以导入著名的第三方网络库AFNetWorking v3.0.4和数据库FMDB v2.6.2为例进行说明. 好,下面开始. 下载源文件 ...

  6. import第三方库的头文件找不到的错误

    问题描述:使用cocoapods导入了第三方库,import该第三方库的某个头文件,然后编译报错找不到这个头文件内所import的头文件. 产生原因:我们需要配置头文件的搜索路径,告诉系统头文件的路径 ...

  7. Python在Windows下安装第三方库浅谈

    在用python编写代码时,往往需要用到第三方库,那么python如何去用第三方库呢,首先我们先来看看是如何安装的,方法可能会很多,但这边只介绍一种,其它请百度或google 比如asyncio,这里 ...

  8. jupyter notebook下python2和python3共存(Ubuntu)

    提示NOTICE 时间:2018/04/06 主题:Ubuntu 下CAFFE框架 主角:Jupyter Notebook 简介: Jupyter Notebook(此前被称为 IPython not ...

  9. Linux下编译第三方库的问题

    因为各个Linux发行版之间的差异还是挺大的,有一些预安装在系统上的基本库是不一样的(不仅仅是版本,有一些是有和无的区别). 那么问题来了: 编译第三方库./configure的时候一般我们不会定制那 ...

  10. R 语言下常用第三方库的说明

    1. doBy 官方文档见 CRAN - Package doBy doBy 主要适用于以下操作: 1) Facilities for groupwise computations of summar ...

随机推荐

  1. Java 模拟数据库连接池的实现

    前面学习过等待 - 通知机制,现在我们在其基础上添加一个超时机制,模拟从连接池中获取.使用和释放连接的过程.客户端获取连接的过程被设定为等待超时模式,即如果在 1000 毫秒内无法获取到可用连接,将会 ...

  2. C# NLog 配置

    首先用NuGet安装NLog依赖DLL NLog NLog.Config NLog.Schema NLog配置文件NLog.config: <?xml version="1.0&quo ...

  3. AtCoder ABC 206

    比赛链接:Here AB水题,跳过 C - Swappable 在数组中找到满足条件的数对 \((i,j)\) \(1 \le i < j \le N (N\in[2,3e5])\) \(A_i ...

  4. Codeforces Round #629 (Div. 3) & 19级暑假第六场训练赛

    A:Codeforces 1328A Divisibility Problem 整除+模 Input 5 10 4 13 9 100 13 123 456 92 46 Output 2 5 4 333 ...

  5. 电缆厂 3D 可视化管控系统 | 图扑数字孪生

    近年来,我国各类器材制造业已经开始向数字化生产转型,使得生产流程变得更加精准高效.通过应用智能设备.物联网和大数据分析等技术,企业可以更好地监控生产线上的运行和质量情况,及时发现和解决问题,从而提高生 ...

  6. 《深入理解计算机系统》(CSAPP)实验四 —— Attack Lab

    这是CSAPP的第四个实验,这个实验比较有意思,也比较难.通过这个实验我们可以更加熟悉GDB的使用和机器代码的栈和参数传递机制. @ 目录 实验目的 准备工作 内容简介 代码注入攻击 Level 1 ...

  7. 解决JedisNoReachableClusterNodeException,No reachable node in cluster报错

    通过jedis连接redis集群时报如下的错误:JedisNoReachableClusterNodeException,No reachable node in cluster 本机连接均正常:   ...

  8. .Net 使用 MongoDB

    1.安装nuget包 MongoDB.Driver 2.简单代码 using MongoDB.Bson; using MongoDB.Driver; using System.Buffers; usi ...

  9. 远程复制文件-scp

  10. [转帖]CIDR

    什么是 CIDR? 无类别域间路由 (CIDR) 是一种 IP 地址分配方法,可提高互联网上的数据路由效率.每台连接到互联网的计算机.服务器和最终用户设备都有一个与之关联的唯一编号,称为 IP 地址. ...