让你编程效率倍增的5个 jupyter notebook 扩展工具

来自集智百科 - 复杂系统|人工智能|复杂科学|复杂网络|自组织
跳到导航 跳到搜索

前言

jupyter notebook 是一种交互式笔记本,支持运行四十多种编辑语言,深受数据科学工作者喜爱。除了优美的原生编程环境,jupyter notebook 还支持各种各样的插件拓展。本文介绍了5个能大大提高编程效率的插件,安装简单,操作方便。
因为 notebook 的扩展都是插件型的,所以非常方便将其添加到你的 jupyter notebook 中。强烈推荐使用 Jupyter 扩展配置器( Jupyter NbExtensions Configurator)来安装你所需的各种扩展应用。 每一个扩展应用都对应一个选择框,方便你决定是否使用此扩展,如下图所示:

编程1.jpg

安装:
可以通过 coda 安装:
conda install -c conda-forge jupyter_contrib_nbextensionsconda install -c
conda-forge jupyter_nbextensions_configurator
也可以使用 pip 安装
pip install jupyter_nbextensions_configurator
jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
jupyter nbextensions_configurator enable --user
想了解更多,可以访问
https://github.com/Jupytercontrib/jupyter_nbextensions_configurator#installation

No.1 标题折叠 Collapsible headings

当你在处理一个大型的 notebooks 时,这项扩展非常有用,它可以让你隐藏部分内容。

编程555.gif

No.2 通知Notify

当你长时间运行一个任务程序的时候,程序运行结束后,此扩展功能会自动提醒你。

编程22.gif
如需使用此扩展,你需要勾选其对应得选择框,并点击 `Notify` 按钮来选择一个最短通知时间,即 notebook 最少持续运行多久后进行提醒。(需要注意的是,这个扩展只有在 notebook 被浏览器正常打开的情况下才能正常工作。)

No.3 代码折叠 Code folding



编程33.gif

No.4 进度条 tqdm_notebook

tqdm 本质上不是一个 notebook 的扩展,它是 Python 中的一个进度条库。 但是此库有时在 jupyter notebooks 会无法正常工作。 Randy Olson 给出一个小小的提醒:
tqdm 是一个 Python 的进度条库,在 jupyter notebook 中则被称之为 "tqdm_notebook"。自从在 nootbook 中加入了 tqdm_notebook 扩展功能,你再也不用担心其引发的混乱问题了。 (Randy Olson 2018 年 3 月 2 日)

No.5 %debug

这个本质上也不是 notebook 的一个扩展,而是 IPython 中的一个魔法命令。为了加深你的理解,建议你读一读 Radek Osmulski 的发布 twitter 上的推文。
最爱 jupyter notebook 大发现:%debug 魔法命令
1. 得到了一个异常
2. 重新插入一个新的输入框,输入 %debug,然后运行它
交互式的调试方法可以打开并显示代码出现异常的语句,方便你联系前后程序查看具体情况。
(Radek 2017年12月26日)

No.6 其他小的拓展与技巧

  • %Ismagic :在输入框中运行这个命令,列出所有可用的 IPython 魔法命令
  • zen mode 扩展: 隐藏菜单栏,让你更专注于代码
  • Execute time 扩展:显示程序块运行的时间
  • autoreload:在不重启 notebook 的情况下,自动载入外部文件,从而修改代码,具体操作如下:

%load_ext autoreload
%autoreload 2