python中jupyter notebook安装教程、常用插件和拓展配置及基本使用(全面)

2023-11-16

揭秘Jupyter内核

Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。代码可边编写边运行,编程时具有语法高亮缩进tab补全的功能。可直接通过浏览器运行代码,同时在代码块下方展示运行结果。 以富媒体格式展示计算结果。富媒体格式包括:HTML,LaTeX等。 对代码编写说明文档或语句时,支持Markdown语法,方便记录笔记和查看。
Jupyter官网

1. jupyter安装

Cmd或者Pycharm终端运行,python版本建议3.8及以下。
使用如下命令打开jupyter notebook

使用命令安装
conda install jupyter
或者
pip install jupyter

您可以通过运行以下命令从命令行(Mac/Linux 上的终端,Windows 上的 CMD 提示符)启动笔记本服务器。这将在终端中打印有关笔记本服务器的一些信息,包括 Web 应用程序的 URL(默认情况下为 http://localhost:8888/)。

jupyter notebook

在这里插入图片描述

2. jupyter常用插件配置

注意:以下安装后打开没有对应扩展,检查一下jupyter安装的环境和插件所在的环境及当前运行的环境是否一致!!!

2.1 Jupyter Notebook和conda的环境和包管理工具nb_conda

#安装
conda install nb_conda
#卸载
canda remove nb_conda

nb_conda拓展可查看当前jupyter notebook所使用的环境及对应的包,同时可创建环境,升级、删除包、安装新的包。

image-20220808094923722

2.2 Jupyter Notebook扩展jupyter_contrib_nbextensions(常用10个拓展,提升效率)

1.#安装
conda install -c conda-forge jupyter_contrib_nbextensions
#或者
pip install jupyter_contrib_nbextensions
2.设置
jupyter contrib nbextension install --user

安装完成后打开jupyter notebook 可以看到有飞常多的可用软件包。下面介绍常用的几个扩展,勾选对应的扩展即可启用。

image-20220808101130126

  • **Autopep8或者Code prettify 格式化代码:**选中需要格式化的cell,点击工具栏右边的小锤子就可以实现代码格式化,可Ctrl+A全选。

    img

  • Toggle all line numbers 关闭/开启代码行号:显示或关闭代码前的行号。
    在这里插入图片描述

  • Table of Contents 侧边栏展示目录(自动编号):可以收集所有正在运行的标题,并将它们显示为浮动窗口,作为侧边栏或导航菜单。该扩展程序还具有可拖动,可调整大小,可折叠,可停靠的功能,并具有具有唯一链接ID和可选toc单元格的自动计数功能。当前选定/编辑或正在运行的单元格的各个部分在目录中突出显示。一些小的diplay调整也可用(移动标题磁贴/菜单,加宽单元格);最后,在导出到 html 时可以保留目录。

在这里插入图片描述

img

  • Collapsible Headings 折叠标题:允许笔记本有可折叠的部分,由标题分隔。 任何 Markdown 标题单元格(即以 1-6 # 个字符开头的单元格)在渲染后都可以折叠。在这里插入图片描述
    screenshot

  • Variable Inspector 显示变量信息:可以显示代码中的变量信息,方便调试。

    img

  • Hide code 隐藏代码:隐藏所有代码块

    Hide input all icon

  • **Snippets 代码片段:**快速添加代码,减少工作量。

    img

  • Hinterland 代码自动补全:自动补全代码。
    在这里插入图片描述

  • ExecuteTime :显示单元格何时完成以及花费多长时间
    在这里插入图片描述

  • Codefolding 代码折叠:折叠代码块,对于长的代码或方法非常方便。

    Unfolded

2.3 jupyter内核管理ipykernel,方便切换运行环境

通常会遇到不同的虚拟环境(或许具有相同的Python版本但安装的包不同),在Jupyter Notebook中无法切换,即“New”的下拉菜单中无法使用需要的环境。所以需要安装ipykernel

#ipykernel安装
python -m pip install ipykernel
#添加内核
python -m ipykernel install --user --name=kernelname  --display-name showname
#其中,kernelname为创建的文件夹名,showname为在Jupyter notebook展示的内核名
#查看kernel列表
jupyter kernelspec list 
#删除“name”这个内核
jupyter kernelspec remove name 

在创建notebook的可选择环境。

image-20220808111904230

在打开的notebook中切换环境。

image-20220808112028306

3. jupyter 基本使用

官方详细使用教程:Jupyter Notebook Viewer (nbviewer.org)

3.1 基本界面

点击help下的User Interface Tour 可查看界面导览,方便快速入门,按左右键切换,Esc退出。

image-20220808123619215

image-20220808123717767

更多可参考:[Jupyter Notebook 基本操作](https://nbviewer.org/github/ipython/ipython/blob/3.x/examples/Notebook/Notebook Basics.ipynb)

3.2 常用快捷键

在这里插入图片描述

在打开的notebook文件后按下字母H键,可以看到所有快捷命令。

image-20220808113211834

快捷键分为命令行模式和编辑模式。

image-20220808122136103

image-20220808122205473

命令行模式常用快捷键

在这里插入图片描述

在这里插入图片描述

编辑模式常用快捷键

image-20220808123114891

3.3 jupyter notebook 导出其他格式

操作步骤

在这里插入图片描述

导出后可能会出现错误,因为没有安装导出所需要的工具包。

image-20220808231751859

解决方法:安装 nbconvert和配套的包

参考官方教程:Installation — nbconvert 7.0.0rc3 documentation

例如:导出PDF需要安装 nbconvert 和MikTeX(因为 nbconvert 依赖于标准 TeX 发行版中包含的包和字体,如果您没有完整的安装,您可能无法使用 nbconvert 的标准工具将笔记本转换为 PDF。)

可能操作比较麻烦,这里介绍其它两种导出PDF的方法:

欢迎关注个人公众号【智能建造小硕】(分享计算机编程、人工智能、智能建造、日常学习和科研经验等,欢迎大家关注交流。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python中jupyter notebook安装教程、常用插件和拓展配置及基本使用(全面) 的相关文章

  • (discord.py) 尝试更改成员角色时,“用户”对象没有属性“角色”

    因此 我正在尝试编写一个机器人 让某人在命令中指定的主持人指定的一段时间内暂停角色 我知道该变量称为 小时 即使它目前以秒为单位 我稍后会解决这个问题 基本上 它是由主持人在消息 暂停 personmention numberofhours
  • Django REST序列化器:创建对象而不保存

    我已经开始使用 Django REST 框架 我想做的是使用一些 JSON 发布请求 从中创建一个 Django 模型对象 然后使用该对象而不保存它 我的 Django 模型称为 SearchRequest 我所拥有的是 api view
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • NameError:名称“urllib”未定义”

    CODE import networkx as net from urllib request import urlopen def read lj friends g name fetch the friend list from Liv
  • feedparser 在脚本运行期间失败,但无法在交互式 python 控制台中重现

    当我运行 eclipse 或在 iPython 中运行脚本时 它失败了 ascii codec can t decode byte 0xe2 in position 32 ordinal not in range 128 我不知道为什么 但
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • ExpectedFailure 被计为错误而不是通过

    我在用着expectedFailure因为有一个我想记录的错误 我现在无法修复 但想将来再回来解决 我的理解expectedFailure是它会将测试计为通过 但在摘要中表示预期失败的数量为 x 类似于它如何处理跳过的 tets 但是 当我
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 如何改变Python中特定打印字母的颜色?

    我正在尝试做一个简短的测验 并且想将错误答案显示为红色 欢迎来到我的测验 您想开始吗 是的 祝你好运 法国的首都是哪里 法国 随机答案不正确的答案 我正在尝试将其显示为红色 我的代码是 print Welcome to my Quiz be
  • 从 pygame 获取 numpy 数组

    我想通过 python 访问我的网络摄像头 不幸的是 由于网络摄像头的原因 openCV 无法工作 Pygame camera 使用以下代码就像魅力一样 from pygame import camera display camera in
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 如何在 Django 中使用并发进程记录到单个文件而不使用独占锁

    给定一个在多个服务器上同时执行的 Django 应用程序 该应用程序如何记录到单个共享日志文件 在网络共享中 而不保持该文件以独占模式永久打开 当您想要利用日志流时 这种情况适用于 Windows Azure 网站上托管的 Django 应
  • 对输入求 Keras 模型的导数返回全零

    所以我有一个 Keras 模型 我想将模型的梯度应用于其输入 这就是我所做的 import tensorflow as tf from keras models import Sequential from keras layers imp
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • PyAudio ErrNo 输入溢出 -9981

    我遇到了与用户相同的错误 Python 使用 Pyaudio 以 16000Hz 录制音频时出错 https stackoverflow com questions 12994981 python error audio recording

随机推荐

  • 贪吃蛇的初步尝试

    1 首先让贪吃蛇动起来 每输入一个方向字符 然后贪吃蛇朝那个方向移动一格 用 kbhit 函数可以让它朝一个方向一直移动 但那速度极快 于是用 speed 函数调整它的速度 达到每秒移动一格的效果 每一步的移动都用一个 for 循环实现 让
  • 学习如何使用最强大的 JavaScript 函数

    今天你将学习如何使用 最强大的 JavaScript函数 数组归约 Array reduce是最强大的 JavaScript Function 时期 reduce有什么作用 为何如此强大 这是reduce的技术定义 Array protot
  • Mybatis高性能批量插入方法

    当使用Mybatis大量插入时可以利用MySQL语句的特性使原来多次请求插入的语句变成一次请求 以此提高插入效率 一般的插入方式 1000条数据 一条一条的插入 Test public void testInsert SqlSession
  • 【rust/egui】(十)使用painter绘制一些图形—connections

    说在前面 rust新手 egui没啥找到啥教程 这里自己记录下学习过程 环境 windows11 22H2 rust版本 rustc 1 71 1 egui版本 0 22 0 eframe版本 0 22 0 上一篇 这里 绘制连接 在上一节
  • Invalid attempt to spread non-iterable instance

    这一类错误大概率是你的延展运算符附近除了错误 比如我的就是应为在一个对象前面用了延展运算符 我将数组的中括号写成了大括号 就报了这个错误
  • Mac 系统的 MySQL 如何修改密码(保姆级别教程)

    要修改 Mac 系统上的 MySQL 密码 可以按照以下步骤进行 打开终端 以管理员身份登录到 MySQL 服务器 sudo mysql u root p 输入管理员密码 切换到 MySQL 数据库 use mysql 查看当前用户列表 s
  • 记录的Android开发过程中遇到的问题。

    180508 更新 网上下载demo 本地studio版本和demo版本不一致处理方式 修改两处 1 项目的build gradle 里面classpath 2修改项目目录下 gradle gt wrapper gt gradle wrap
  • openpcdet验证已训练好权重文件

    python tools test py cfg file 配置文件路径 ckpt dir 权重文件所在文件夹路径 eval all
  • Java静态修饰符static

    1 Satic注意事项 1 Static修饰的方法可以被类调用或者直接使用 而未被static修饰的方法是实例方法 属于对象的 必须用对象调用 2 类在方法区 方法在栈内存 对象在堆内存 3 静态只能访问静态 不能访问实例 实例可以访问静态
  • windows7的5次shift实验

    原理 在win7的登录界面连续按5次shift键会弹出程序c windows system32 sethc exe 在开启win7时会出现正常登录和尝试修复 在尝试修复界面利用txt文本打开C盘 修改cmd exe为sethc exe 并将
  • FastDFS文件同步机制简介

    FastDFS文件同步机制简介 本篇文章转载于FastDFS作者 余庆 大佬的 FastDFS分享与交流 公众号 FastDFS 文件同步采用 binlog 异步复制方式 storage server 使用 binlog 文件记录文件上传
  • c语言警告文件末尾没有换行符,关于c ++:“文件末尾没有换行符”警告,即使在换行后也是如此...

    我最近一直在努力学习C 直到今天一直都很顺利 我正在尝试创建一个非常简单的应用程序 它基本上只是要求用户输入一个数字 然后显示该数字的阶乘 当我尝试在Cygwin中编译文件 g factorial cpp o fact 时 我收到以下警告
  • 微信小程序触底加载scroll-view

    微信小程序触底加载 scroll view 了解什么是触底加载 需求 有个固定高度的容器 实现容器里面的内容触底加载 1 内容盒子的高度 2 盒子里内容的总高度 3 滚动条的scrollTop 触底加载的原理就是 当里面的容器触底的时候进行
  • CPU核心数,线程数,时间片轮转机制解读

    CPU的核心数 CPU个数 是指物理上 即硬件上的核心数 核心数 是逻辑上的 简单理解为逻辑上模拟出的核心数 线程数 是同一时刻设备能并行执行的程序个数 线程数 cpu个数 核数 区分CPU线程数与JAVA多线程的概念 CPU线程数 在CP
  • 计算机的计算单位

    容量单位 在物理层面 高低电平记录信息 理论上只认识0 1两种状态 0 1能够表示的内容太少了 需要更大的容量表示方法 0 1称为bit 比特位 字节 1Byte 8bits 硬盘商一般使用10进位标记容量 500G一般格式化后只剩465G
  • Postgresql ODBC驱动,用sqlserver添加dblink跨库访问postgresql数据库

    在同样是SQLserver数据库跨库访问时 只需要以下方法 declare rowcount int set rowcount 0 set rowcount select COUNT from sys servers where name
  • APP自动化测试-7.移动端web app自动化测试

    APP自动化测试 7 移动端纯web应用测试 文章目录 APP自动化测试 7 移动端纯web应用测试 前言 一 移动端应用分类简述 二 web app基础配置 1 基础信息获取 2 驱动配置 3 启动 三 元素定位 总结 前言 移动端应用细
  • 在虚拟机上ifconfig结果中eth0没有IP地址(inet4)而是显示的是inet6

    问题描述 在虚拟机上执行ifconfig 结果中eth0没有显示IP地址inet4 而是显示inet6 出现原因 虚拟机上没有连接网络 解决方法 启动网卡 执行命令 ifup eth0 衍生问题 当执行上述命令时 却报如下错误 some o
  • 小程序工作学习:值的传递与操作以及target,options区别

    最近做小程序相关的东 学艺不精原理不了解 在前端界面的问题上遇到很多问题 好在在别人的帮助下以及在查资料补漏过程中还是有点收获的 问题 一 关于请求中如何能把这个页面的一下参数传递给下一页面 不能总是重复调用接口访问后台 这样的话影响加载页
  • python中jupyter notebook安装教程、常用插件和拓展配置及基本使用(全面)

    文章目录 1 jupyter安装 2 jupyter常用插件配置 2 1 Jupyter Notebook和conda的环境和包管理工具nb conda 2 2 Jupyter Notebook扩展jupyter contrib nbext