Jupyter notebook 系列
Jupyter notebook系列(1):安装与使用(安装,虚拟环境的联接使用,windows远程连接linux的jupyter)
Jupyter notebook系列(2):使用技巧(快捷键,多行输出,多光标操作,Unix系统命令的使用,查看输入输出历史,保存记录点与分享,抑制文末输出,图片输出,多环境kernel切换)
Jupyter notebook系列(3):魔法函数(查询,运行外部程序,计时,加载文件,变量管理调试,shell交互,图片的显示,查询环境变量,显示运行内核函数,kernel切换)
Jupyter notebook系列(4):插件的安装使用(代码折叠,添加目录,变量监控,代码格式化,运行时间统计,自动补全,自动保存,运行结束提醒)
Jupyter notebook系列(5):主题的安装更换(主题颜色背景,字体字号大小,工具条可见,画图风格设置)
Jupyter notebook系列(6):更高级的配置Mark(显示行号,更改工作路径,使用sudo权限)
文章目录
- Jupyter notebook 系列
- 1、安装插件并激活
- 2、推荐常用插件
- 2.0 我自己的插件配置
- 2.1 代码折叠 Code folding
- 2.2 代码块折叠 Collapsible Headings
- 2.3 给notebook添加目录 Table of Content
- 2.4 变量查看器 Variable Inspector
- 2.5 代码格式化 Code prettify
- 2.6 执行时间统计 Execute Time
- 2.7 自动补全 Hinterland
- 2.8 自动保存 AutoSaveTime
- 2.9 隐藏单元代码Hide Input All
- 2.10 插入常用代码段 Snippets、Snippets Menu
- 2.11 程序结束自动提醒Notify
- 2.12 一些其他的插件
- LAST、参考文献
1、安装插件并激活
1.1 安装并激活 jupyter_contrib_nbextensions
为了快速安装的速度,先临时使用清华的镜像,这样并不会改变默认的pip参数。
# 下载安装
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple flask
pip install jupyter_contrib_nbextensions
# 配置
jupyter contrib nbextension install --user
重新启动jupyter notebook,“Nbextensions”出现在导航栏中,勾选目录。
如果失败进行下一步
1.2 安装并启用 Jupyter Nbextensions Configurator
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
重新启动jupyter notebook,“Nbextensions”出现在导航栏中,勾选目录。
2、推荐常用插件
2.0 我自己的插件配置
2.1 代码折叠 Code folding
勾选前后对比
勾选前
勾选后
使用了code folding之后, 在def 前面, 会多出一个小三角。点击之后, 就都可以折叠起来。
除了折叠类和函数, 普通的代码怎么办? Code folding还可以通过注释来折叠!
fold之后的代码也是直接可以运行的, 除非手动点击小三角, 不会自行展开.
2.2 代码块折叠 Collapsible Headings
Collapsible Headings与code folding的差不多功能的,可以叫做head folding.
Head可以理解为标题. 当你把cell改为markdown的时候, 用#就可以构造head了。
当没有折叠标题时:
使用了Collapsible Headings之后, 在标题前面也多出小三角。点击后, 标题就被折叠起来了。
折叠之后的标题这时候不能自动运行标题下的代码了, 需要展开标题才可以。
2.3 给notebook添加目录 Table of Content
这是一个自动生成目录插件。顾名思义就是给notebook添加目录, 要知道自带的markdown功能是不支持目录的。如果在jupyter notebook中使用了markdown对程序进行了解释和说明的话,那么安装这个插件以后,会自动在大纲视图,对于阅读程序使用,强力推荐。目录内容也是超链接。
最后的效果就是左边栏多出了一个目录。
使用方法:同样, 首先需要在内容中把某些cell转为markdown, 然后按照#的个数添加不同级别的标题…
使用之后, 目录会有四种形式: 侧边栏, 悬浮窗, 顶部工具栏, notebook最前端。还可以自动编序号!
几种模式可以随意切换哦~ 请看图!
侧边栏
悬浮窗
顶部工具栏
2.4 变量查看器 Variable Inspector
这个功能是类似于Matlab和Spyder的变量栏。相较于Pycharm查看变量的繁琐更加方便。这是一个查看变量的插件,类似于 Matlab 和 R studio 的工作空间,可以查看变量名、类型,大小,形状和值。其中变量的 shape (形状)这个参数在进行矩阵运算时,十分实用,并且这个窗口还可以调节大小,排序等功能,十分推荐。
勾选使用之后, 顶端工具栏会出现一个准星图标。
Variable Inspector扩展会收集所有已定义的变量并将其显示在浮动窗口中。该扩展名也可拖动,可调整大小,可折叠。
2.5 代码格式化 Code prettify
当代码的格式很乱, 又不想耗费时间去一行行的调整时, 勾选code prettify。
工具看出现这个标记
去掉空格, 缩进对齐, 语法错误都可以检查, 甚至连你漏掉的括号都能给你补上
我看网上有教程需要在cells里面增加一句话,规定代码格式化使用的库
from yapf.yapflib.yapf_api import FormatCode
但是我自己试下来好像没有关系
格式化前
格式化后
问题解决
如果出现ModuleNotFoundError No module named 'yapf'
pip install yapf
2.6 执行时间统计 Execute Time
执行时间,我觉得这是一款非常实用的插件,企业项目中对效率要求也很高,因此,我们需要统计代码的运行时间。最初级的用法就是在每个函数开始和结尾处写一个计时语句,这样比较繁琐。如果用jupyter notebook完全没必要这么麻烦。我们只需要打开Execute Time插件,这个插件会在代码模块最后计算该模块的计算时间和运行结束时间,统计每个cell的运行耗费时间,结束时间等,美观实用。
2.7 自动补全 Hinterland
勾选Hinterland
和Table of Contents
=》自动补全
它是一款代码自动补全插件,一款优秀的工具如果没有自动补全功能是说不过去的。jupyter notebook虽然自带补全功能,但是每次都需要点击tab键来补全,这样效率比较低。
我们可以通过勾选Hinterland让jupyter notebook具备自动补全功能,当我们输入几个包含字母后它能够快速补全我们想要的函数,补全速度堪比pycharm,代码提示功能是否很强大。
2.8 自动保存 AutoSaveTime
控制脚本的自动保存时间,可以在此设置保存时间
工具栏多出一个按钮可以控制
2.9 隐藏单元代码Hide Input All
隐藏代码单元,仅仅保持所有的输出和 markdown 单元可见
工具栏多出一个按钮可以控制
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oAZaYI9I-1605578594038)(http://qiniu.daidaixiang.xyz/image-20201117092708855.png)]
选中代码后按下即为收缩,
2.10 插入常用代码段 Snippets、Snippets Menu
Snippets插件在工具栏里加了一个下拉菜单,可以非常方便的直接插入代码段,完全不用手动敲。但是需要自己配置常用的代码段
同时介绍一下另一个插件Snippets Menu(他会出现在菜单栏里面)
主要的功能是插入一些常用库的常用代码段
比如怎么新建空矩阵等等
2.11 程序结束自动提醒Notify
当你长时间运行一个任务程序的时候,程序运行结束后,此扩展功能会自动提醒你,你不必把注意力一直放在这个任务上。
建议勾选这个插件的这两个参数(如果你是google浏览器的话)
2.12 一些其他的插件
Spellchecker: 对 markdown 单元中的内容进行拼写检查
LAST、参考文献
Anaconda-Jupyter notebook 如何安装 nbextensions - 简书