全文共1786字,预计学习时长4分钟
Jupyter Notebooks可以最有效地显示结果和共享代码,这在以前的IDEs中并不容易实现。然而,仍有些地方有待改进。
在文本编辑器中,希望有一些功能在Jupyter中不是默认的。但别担心。就像Python一样,Jupyter也有第三方扩展功能。
本文主要介绍一些最有用的扩展功能。
1. 可折叠标题
可折叠标题这项扩展功能使笔记本的流程更容易理解,也有助于创建简洁的笔记本。
若要获得此功能,请在终端窗口安装带有此命令的jupyter_contrib_nbex软件包:
conda install -c conda-forge jupyter_contrib_nbextensions
一旦安装了该软件包,可使用以下方法启动Jupyter Notebooks:
Jupyter Notebooks
进入Jupyter Notebooks主页后,可以看到为NBExtensions创建了一个新选项卡。
然后,利用这个软件包可以获得许多拓展功能。
呈现页面如下:
2. 自动导入
自动化是未来的趋势。
令人烦恼的是,每当在数据科学项目中打开一个新的Jupyter Notebooks时,都需要为其中一些项目复制粘贴许多库和默认选项。
常用导入工具:
· Pandas and numpy —在我看来,Python必须将二者作为默认导入工具
· Seaborn, matplotlib, plotly_express
· 更改pandas 和seaborn 的部分默认选项
以下是粘贴了无数次的脚本。
import pandas as pdimport numpy as npimport plotly_ express as pximport seaborn as snsimport matplotlib.pyplot as plt%matplotlib inline # We dont Probably need the Gridlines. Do we? If yescomment this linesns.set(style="ticks") # pandas defaultspd.options.display.max_columns = 500pd.options.display.max_rows = 500
有没有办法使其自动导入呢?
只需点击 nbextensions 选项卡并选择 snippets 拓展功能。
对snippets.json 文件作以下更改,即可在/miniconda3/envs/py36/share/jupyter/nbextensions/snippets发现该文件。这里的py36是conda virtualenv。请注意,不必在site-packages进行更改。
以下是该拓展功能的实际应用:
很棒,对吧?我们还可以用它为深度学习笔记本和基于NLP的笔记本创建基本代码片段。
3. 执行时间
我们一般使用%time以及基于装饰器的计时器函数来度量函数的时间。但现在也可以使用这个绝佳的扩展功能来实现这一点。
而且它看起来很棒。
只要从 NBextensions 列表中选择 ExecutionTime 拓展功能,每次执行单元格之后,你将在单元格底部得到一个执行结果,以及执行单元格的时间。
4. 其他拓展功能
NBExtensions有很多扩展功能。以下是部分其他功能:
· 限制输出:自从你在笔记本上打印了很多文本后,笔记本就一直处于死机状态。这个扩展功能可以限制打印在代码单元格下面的字符数量。
· 2-3转换器:旧python2 notebook有问题,或是厌倦了更改打印语句。这个拓展功能是不错的选择。
· 实时标记预览:有些人喜欢在Jupyter Notebooks上使用标记写博客。由于撰写中出错,有时会提示系统繁忙。现在可以在编辑标记单元格的源代码时看到它们呈现的输出实时预览。
结论
jupyter_grub_nbextension软件包运行良好。
在检查执行时间、滚动笔记本和重复的任务时,它让我们的生活变得简单多了。
这个软件包还提供许多其他扩展功能。务必要看一看,看看哪些对你有用。
另外,若想了解更多关于python3.0版本的知识,推荐密歇根大学关于学习中级Python的精品课程。
留言 点赞 关注
我们一起分享AI学习与发展的干货
欢迎关注全平台AI垂类自媒体 “读芯术”
(添加小编微信:dxsxbb,加入读者圈,一起讨论最新鲜的人工智能科技哦~)