jupyter中那些神奇的第三方拓展魔术命令

简介: jupyter中那些神奇的第三方拓展魔术命令

1 简介

无论是jupyter notebook还是jupyter lab,都可以使用ipython中的众多自带「魔术命令」来实现丰富的辅助功能,诸如%time之类的。

这些都已经是老生常谈的知识没什么好说的,但我们今天要给大家介绍的,则是一些实用的基于「第三方拓展」的魔术命令,从而极大程度上扩展jupyter的功能。

图1

2 jupyter中实用的第三方魔术命令拓展

jupyter中使用外部的拓展魔术命令,需要先像安装常规的Python库一样用pip等进行安装,再在使用前执行一次%load_ext 拓展名称或者import 拓展名称,之后在当前kernel还保持活跃的情况下,就可以随意在单元格内使用对应的拓展魔术命令。

下面我们来介绍一些常用的第三方魔术命令拓展。

2.1 用magic_markdown玩转markdown

虽然在jupyter中单元格有自带的markdown模式,但其功能比较有限,而利用magic_markdown,我们可以实现更多惊人的功能。

使用pip install magic-markdown完成安装之后,我们就可以使用魔术命令%%mmd按照下面的格式实现在markdown中嵌入Python变量:

图2

更多示例见https://github.com/transfluxus/magic_markdown

2.2 用ipython-sql执行sql查询

使用pip install ipython-sql完成安装后,我们可以直接在jupyter单元格中完成数据库的连接及查询:

图3

更多使用方法见https://pypi.org/project/ipython-sql/

2.3 用jupyter_spaces创建命名子空间

使用pip install jupyter_spaces安装完成后,我们就可以参考下图来创建和移除不同的命名子空间,这在调试代码时很受用:

图4

更多使用方法见https://github.com/davidesarra/jupyter_spaces

2.4 用blackcellmagic实现代码美化

通过pip install blackcellmagic之后,我们可以按照下图的方式使用blackcellmagic魔术命令,从而实现代码的格式化,且格式化时不会执行对应单元格内的代码,非常方便:

图5

更多使用方法见https://github.com/csurfer/blackcellmagic

2.5 用watermark记录系统、版本等信息

接下来要介绍的watermark,我在之前的一期文章中也介绍过,可以帮助我们记录诸如系统硬件信息、导入的包的版本、时间戳等信息,帮助我们日常管理程序。

同样利用pip install watermark进行安装之后,我们就可以利用%watermark命令记录下很多信息:

图6

更多使用方法见https://github.com/rasbt/watermark/blob/master/docs/watermark.ipynb

2.6 用heat对代码执行耗时分布进行可视化

通过pip install py-heat-magic之后,我们可以使用%%heat魔术命令对单元格内代码的执行耗时分布进行热图可视化,更加直观地找到性能待提升的代码块,就像下图示例那样:

图7

相关文章
|
2月前
|
Shell
自定义 jupyter 魔法命令
自定义 jupyter 魔法命令
52 0
|
3月前
|
机器学习/深度学习 数据挖掘 Shell
Jupyter notebook中5个有趣的魔法命令
Jupyter notebook中5个有趣的魔法命令
|
11月前
|
Docker Python Windows
1行命令搭建自己的python服务器,docker,安装 jupyter
1行命令搭建自己的python服务器,docker,安装 jupyter
167 0
|
Python
Jupyter-notebook 常用魔法命令
本文分享了一些常用到的 Jupyter-notebook 软件的快捷键以及 魔法命令,以供学习
201 0
|
安全 网络安全 双11
【漏洞复现-jupyter_notebook-命令执行】vulfocus/jupyter_notebook-cve_2019_9644
【漏洞复现-jupyter_notebook-命令执行】vulfocus/jupyter_notebook-cve_2019_9644
304 0
【漏洞复现-jupyter_notebook-命令执行】vulfocus/jupyter_notebook-cve_2019_9644
|
存储 IDE 开发工具
9个可以提高Jupyter Notebook开发效率的魔术命令
9个可以提高Jupyter Notebook开发效率的魔术命令
535 0
9个可以提高Jupyter Notebook开发效率的魔术命令
|
数据挖掘 Python
【DSW Gallery】Jupyter魔术命令使用技巧
Jupyter Notebook除了能够执行Python代码之外,还提供一些魔术命令(Magic Command)方便用户简洁地解决标准数据分析中的各种常见问题,本文介绍几个常见的魔术命令使用技巧。
【DSW Gallery】Jupyter魔术命令使用技巧
|
5月前
|
数据采集 机器学习/深度学习 数据可视化
使用Jupyter Notebook进行数据分析:入门与实践
【6月更文挑战第5天】Jupyter Notebook是数据科学家青睐的交互式计算环境,用于创建包含代码、方程、可视化和文本的文档。本文介绍了其基本用法和安装配置,通过一个数据分析案例展示了如何使用Notebook进行数据加载、清洗、预处理、探索、可视化以及建模。Notebook支持多种语言,提供直观的交互体验,便于结果呈现和分享。它是高效数据分析的得力工具,初学者可通过本文案例开始探索。
|
3月前
|
Python
Jupyter Notebook又一利器nbterm,在终端玩notebook!
Jupyter Notebook又一利器nbterm,在终端玩notebook!
|
5月前
|
文字识别 异构计算 Python
关于云端Jupyter Notebook的使用过程与感想
在自学Python时,由于家庭电脑使用冲突和设备老旧,转向云端平台。体验了多个服务:1. 魔搭modelscope(最喜欢,赠送资源丰富,社区活跃),2. Colaboratory(免费GPU,但有时重启,建议用阿里云),3. Deepnote(免费环境有限,但GPT-4代码生成功能强大),4. 飞桨aistudio(适合PaddlePaddle用户),5. ModelArts(曾有免费实例,现难找)。综合来看,阿里云的稳定性与服务更优,尤其是魔搭的自动代码修正功能。对于AIGC,推荐魔搭和付费版PAI-DSW。欢迎分享更多云端Jupyter平台体验。
261 1