查看原文
其他

第四弹!这些 Jupyter Notebook 插件真好用!

朱小五 凹凸数据 2022-05-28

大家好,我是小五🧐

前面我们分享了10个有趣的Jupyter Notebook使用技巧和5个魔方命令👇

5个Jupyter Notebook使用技巧(第一弹)

5个Jupyter Notebook使用技巧(第二弹)

5个Jupyter Notebook魔法命令(第三弹)

花几分钟掌握部分技巧,就可以提升自己的工作效率,节约时间岂不乐乎?

今天是第四篇,本文会介绍一些有趣有用的Jupyter Notebook插件

安装插件

前面的几篇文章给大家介绍了一些Jupyter的一些使用技巧,但原始的 Jupyter Notebook 仍然仅仅就是一个单一的编辑器。如何将它改造地更加具有生产力,更接近于IDE(集成开发环境)呢?

好在已经有开发者用 JavaScript 替我们写好了很多辅助插件,你可以在 Github 上搜索到jupyter_contrib_nbextensions插件,然后按照官方文档只输入两行命令后即可搞定。

# 安装Jupyter的配置器
pip install jupyter_nbextensions_configurator

# 启动配置器
jupyter nbextensions_configurator enable --user

这里仍然是按步骤教大家安装插件:

1、跟打开 Jupyter Notebook 程序一样,我们同理找到 Anaconda Prompt 并单击打开;

2、输入 pip install jupyter_contrib_nbextensions 然后单击 Enter 键,这里速度可能稍慢一些。

程序运行中途会出现 y/n 的选项,输入 y 并按 Enter 键运行,直到出现Successfully installed的提示,如下图所示。这样我们就成功地安装了jupyter_contrib_nbextensions模块。

3、安装好jupyter_contrib_nbextensions模块后,我们还需要继续输入jupyter contrib nbextension install --user然后按Enter键进行用户配置。

这样就彻底安装好了

安装完成后只需重新进入 Jupyter Notebook 的主页,就可以看到新增了「NBextensions」选项,点击进入到选项之中即可以勾选喜欢的插件来提高你的编程体验了!

添加插件的方法也很简单,单击Nbextensions选项卡打开,勾选你先要添加的插件即可。

如果插件全是灰色不可选的状态,注意左上角的警告勾选去掉(即下图中圆圈位置)。

推荐插件

下面推荐给大家几个实用的Jupyter Notebook插件,这样大家在使用中可谓是如虎添翼。

目录

添加方法:

Nbextensions选项中勾选Table of Contents(2)

使用方法:

我们再刚才创建的第一行代码的ipynb文件中,添加了三级标题,同时会发现主界面多了一个方框内的按钮(下图中箭头所指)。

点击右上角方框内的按钮,目录就会显示出来了。

自动补全

添加方法:

Nbextensions选项中勾选Hinterland

使用方法:

重新刷新进入刚才的ipynb文件中,在新的代码框编写print("hello world"),你会发现刚打1、2个字母系统就已经自动帮你选择了可能的代码/函数。

除此之外,我们使用自动补全快速填好了print()之后,print()函数的用法以及参数统统出来了,真的是对初学者非常有用。

当然,还是建议大家多动手,常用的函数还是争取能记住并手打。

显示运行时间和耗时

添加方法:

Nbextensions选项中勾选ExecuteTime

使用方法:

重新刷新进入刚才的ipynb文件中,在新的代码框编写print("hello world"),成功显示单元格里代码的运行完成时间和所耗时长。

美化/格式化代码

添加方法:

Nbextensions选项中勾选Autopep8

使用方法:

Autopep8,使用特定于内核的代码重新格式化/美化代码单元格的内容。

自定义代码块(代码复用)

添加方法:

Nbextensions选项中勾选snippets

使用方法:

此扩展插件添加后,工具栏中会出现一个下拉菜单。如下图所示,我们可以轻松将一些常用的Code插入单元格中。

△动图

在日常使用中,有一些代码段需要经常性的重复使用。我们可以事先将自己常用的代码片段都保存到示例中,这样就不必每次都敲一遍了。

具体方法就是在安装目录下找到$(jupyter -- data-dir)/nbextensions/Snippets/Snippets.JSON,然后根据 JSON 中的现有代码段列表中添加一个新的 JSON 块来指定代码段。

例如,要添加一个导入 numpy、 matplotlib 和 print 语句的新代码片段,JSON 文件应该修改为:

{
    "snippets" : [
        {
            "name" : "example",
            "code" : [
                "# This is an example snippet!",
                "# To create your own, add a new snippet block to the",
                "# snippets.json file in your jupyter data directory under nbextensions:",
                "# $(jupyter --data-dir)/nbextensions/snippets/snippets.json",
                "import this"
            ]
        },
        {
            "name" : "some imports",
            "code" : [
                "import numpy as np",
                "import matplotlib as mpl",
                "print('spam')"
            ]
        }
    ]
}

这样,就将我们需要复用的一段代码命名为some imports,并且添加到Snippets里面啦。我们下次需要用的时候,直接在下拉框找到,并且点击即可插入。

注:插件snippet menu也能实现自定义代码段的效果,这里就不展开讲了。

今天继续介绍了Jupyter Notebook中的一些拓展插件,这样我们一共通过四篇文章简单介绍了一些使用技巧、魔法命令和插件。毋庸置疑,Jupyter Notebook 仍然是数据科学工作流程中不可或缺的一部分。而对于我们以 Jupyter Notebook 为常用工具的人来说,通过各种技巧提升工作效率还是很有必要的。

觉得有技巧帮助到你提升效率/乐趣的话,别忘了给本文点个赞哦👍

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存