选自Towardsdatascience
作者:PranjalChaubey
机器之心编译
参与:NurchachuNull、张倩
对全世界的Python高手而言,JupyterNotebook是目前最流行的编程环境,尤其是对那些从事机器学习和数据科学的人而言。数月前我第一次开始认真研究机器学习时发现了JupyterNotebook。刚开始,我因这一切可以在我的浏览器中运行而感到惊讶和开心。但是,不久后我就失望了,老套的JupyterNotebook的界面非常基础,缺乏很多有用的功能。那时候我就决定去寻找一些JupyterNotebook的黑客技术。
在这篇文章中,我展示了一些JupyterNotebook的附件/扩展,以及一些能够增强JupyterNotebook和提高生产力的命令。简言之,就是要增强你的JupyterNotebook。
如果你按照下面的指示去做,你的JupyterNotebook会拥有下面这些令人惊叹的功能(如果你愿意,还能获得更多):
能够动态切换多个Conda环境,而无需重启JupyterNotebook。
一个很有用的弹出式便签(这是我最喜欢的功能),无需改变原始笔记本中任何地方就可以把玩、测试你的代码。
代码单元内的代码折叠。很疑惑为啥这个不是JupyterNotebook的固有功能。
一键代码单元隐藏,这是一个重要的功能,当你需要通过可视化的方式展示数据时,人们并不会关心你的代码,而是你的图表。
一个超级酷的变量检查器。
用于Markdown单元的拼写检查器。
用于深夜编码会话的禅意黑模式(ZenMode)。
能够动态增加常用python结构(例如Listcomprehension)的CodeSnippets菜单。
最后这个绝对是最好的功能——舒缓漂亮的深夜蓝配色方案,拯救你的眼睛!
是时候增强我们的jupyternotebook了!
炫酷的深蓝午夜主题
首先,要保证我们的notebook有一个漂亮的黑色主题,这样我们的眼睛就会舒服一些。如果你每天要工作很长时间,那固有的白色背景会让你眼睛很难受。无论如何,一旦你换成了黑色,就永远不会想换回来。
使用下面的命令安装黑色的主题,
Makesureyouareinthebasecondaenvironmentcondaactivatebaseupgradetolatestversionpipinstall--upgradejupyterthemes
主题包安装和更新好之后,运行下面的命令,将原来白色主题的JupyterNotebook换成一款深蓝午夜主题。你的眼睛会喜欢这款主题的。
StopandexityourJupyterNotebookserverfirstInstalltheIPythonKernelpipinstallipykernelRepeatstepsfortheotherenvironment,er--name=gym

这便是最新添加的Kernel的展现形式。请注意这款舒缓的午夜蓝主题。
其他炫酷功能
关于我在上面提及的其他炫酷功能,需要安装一些叫做nbextensionsforJupyterNotebooks的东西。
安装地址:
安装nbextensions是很容易的,简单地遵循下面的步骤就行:
MakesureyouareinthebaseenvironmentcondaactivatebaseInstallthenecessaryJSandCSSfilesjupytercontribnbextensioninstall--system
Nbextensions标签!
正如你在上面看到的,这个扩展列表十分庞大,甚至第一眼看上去有些吓人。但并不是所有的都有用,下面是我用到的一些功能:
TableofContents(2):单击生成整个笔记本的目录,不同的section都有对应的超链接。
Scratchpad:在我看来绝对是最好的扩展了。这是一个你可以在里面做代码实验的独立空间,不会干扰笔记本中的其他部分。
Codefolding:代码折叠,这个不需要做过多的解释。
HideInputAll:隐藏所有的代码单元,同时保持所有的输出和markdown单元可见。如果你要向非技术人员解释你的结果,那么这就会是一个很有用的功能。
VariableInspector:将你从调试的忧伤中拯救出来,这与SpyderIDE中的变量检查窗口有些类似。
Spellchecker:对markdown单元中的内容进行拼写检查。
Zenmode:移除掉屏幕中杂乱无关的内容,以便你能够聚焦于重要的东西上,例如代码。
SnippetsMenu:从listcomprehension到pandas以及它们之间的所有常用代码片段的一个很酷的集合。这是最好的部分?你可以修改窗口的小部件来添加你自己的定制片段。
上述列表包含了我常用的扩展功能,但是我鼓励你去尝试一下其余的扩展功能。一些有意思的功能包括ScrollDown、table_beautifier以及Hinterland。
Snippet扩展和TableofContentsgeneration扩展在工作中同时使用。
Scratchpad扩展
免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系