
jupyter notebook 进阶使用:nbextensions
nbextensions 是jupyter notebook 的一个扩展,可以有很多有用的功能
1 安装&配置nbextensions
在我们配置nbextensions之前,jupyter notebook的界面是这样的:

我们在命令行输入以下命令,即可安装并配置nbextensions
1.1 安装nbextensions
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
1.2 安装nbextensions_configurator
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
安装配置完成后,我们重新启动jupyter notebook,界面变成了:

多出来的一栏就是我们新配置的nbextensions
2 nbextensions主要扩展
点开nbextensions ,里面是所有我们可以添加的扩展

下面将列举一些较为有用的扩展
2to3 Converter | 将一个框内的python2 代码转换成python3代码,设置了之后,会出现一个这样的图标: 如果一个框格内本来是python2的代码
点击了图标之后,代码会变成 |
AddBefore | 在原始的jupyter notebook中,我们只能向框格后面添加新的框格。设置了这个之后,我们可以在指定框格之前添加新的框格了
这一图图标分别表示了向前和向后添加框格 |
AutoSaveTime | 设置自动保存代码的间隔,设置了之后,会出现这个图标
|
Autopep8 | 首先用 然后设置了这一选项之后,就可以对单元格里面的代码自动排版了 比如原来是这样的一串代码:
设置了这一选项后,也会出现一个图标 *注意和2to3conveter的区分一下 点击图标之后,会出现:
|
Code Font Size | 设置代码字体大小,设置了之后,会出现这样的图标:
|
Codefolding | 设置了之后,可以折叠代码
|
Code prettify | 按照PEP8 Python编码规范美化代码
|
Code Font Size | 代码块字体放大缩小 |
Collapsible Headings | 设置了之后,标题内的部分可以折叠 |
datestamper | 设置了之后,会出现这样的一个图标
点击该图标,会将当前时间复制到框格中 |
ExecuteTime | 设置之后,每执行一个框格的内容,都会显示执行的时间
|
Exercise | 设置之后。将第一个框格设置为问题,之后的设置为答案,答案可以被隐藏 设置之后,会出现这个图标
选中多个框格(长摁shift+点击代码段灰色的部分 然后点击该图标 比如这两个图标,我们同时选中这两个,然后点击exercise图标
效果为:
点开之后,有:
|
Exercise2 | 和Exercise类似,不过比它美观一点(个人观感) 设置了之后,会出现这个图标 也是选定多个框格,然后点击该图标,效果为:
|
highlighter | 对于框格内的markdown内容,可以改变背景颜色 设置了之后,会出现这样的图标
比如对于这样的markdown
选中高亮之后,可以是: |
Highlight selected word | 高亮选中的字符
|
Hinterland | 代码补全 |
Limit Output | 限制每个框格输出的字符个数 |
nbTranslate | 对markdown的部分进行翻译 设置之后,会出现这两个图标
点击右边的设置可以设置源语言和目标语言 我这里是英语翻译成简体汉语 设置完之后,点击左边的图标,即可进行翻译 原来的markdown
翻译之后的markdown
|
Notify | 当notebook内核空闲的时候,会在浏览器处发一个通知 |
Rubberband | 更方便地选中各个框格 shift+鼠标左键:选中目前框起来的框格 ctrl+shif+鼠标左键:选中所有框起来过的框格
|
Runtools | 更多地执行python程序的方法(如执行某框格以上/下的代码,执行标记的框格的代码,锁定标记的代码,等等)
|
Scratchpad |
使用Ctrl+B开/关 草稿本单元格
|
Snippets | 将一部分代码段包装成一个模组,之后再jupyter中可以反复使用 设置了之后,会出现一个这样的图标
一开始只有example一个选项 ,选中之后,在框格中会出现 这样一段代码。 我们如果需要自己添加模块的话,需要在上面所说的路径中修改这个json文件 (默认路径:C:\Users\账户名\AppData\Roaming\jupyter\nbextensions\snippets) 一开始的json文件中的内容如下:
我们添加一个模块:
重启当前notebook(刷新就好了),可以看到在snippets里面就有了np+pd这个模块 点击它,狂框格里面就有如下代码了:
|
Spellchecker | 设置了之后,会检查markdown的拼写是否正确(不会检查语法)
|
Table of Contents (2) | 添加左侧目录 设置了之后,会出现这样的图标
点击之后,会出现目录 |
Toggle all line numbers | 显示代码行号 |
Variable Inspector | 检查当前每个参数的属性 设置之后,会出现以下图标
点击之后,会出现一个显示各个参数属性的表格
|
3 修改颜色主题
首先安装包: pip install jupyterthemes
命令行选项举例:
| jt -h | 查看帮助 |
| jt -l | 查看主题列表
|
| -T | 工具栏是否可见 |
| -fs | 代码字号(默认11) |
| -nfs | notebook字号(默认13) |
| -ofs | 输出内容字号(默认8.5) |
| -cellw | 单元格宽(默认980) |
| -lineh | 单元格行高(默认170) |
| -r | 恢复默认主题 |
3.1 颜色主题列举
jt -t 加后续主题名称 (注:有可能改完主题之后,工具栏不见了,方法是命令行的语句改成 "jt -t 主题名称 -N -T“)
3.1.1 chesterish

3.1.2 grade3

3.1.3 gruvboxd

3.1.4 gruvboxl

3.1.5 monokai

3.1.6 oceans16

3.1.7 onedork

3.1.8 solarizedd

3.1.9 solarizedl

4 让一个单元格有多个输出
正常情况下, 一个单元格只显示一个输出结果
在notebook的开头执行这样的代码,就可以显示多个输出结果了
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"

更多推荐

































所有评论(0)