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
以上就是本文的全部内容,欢迎在评论区发表你的感想与见解。
——END——
最近发现一个点外卖每顿饭都能少花5-20元的宝藏号。
就是她,↓点击下面名片关注公众号↓
进入公众号点击菜单领取红包最低5元,最高56元!
Jupyter中那些神奇的第三方拓展魔术命令相关推荐
- Jupyter notebook中自定义支持天软TSl语言的魔术命令
自定义支持TSL的魔术命令 前言 功能 使用范例 核心代码 相关链接 前言 越来越习惯在jupyter notebook中进行数据分析,但是平时也离不开天软TSL,频繁在两者之间切换了切换去也麻烦,在 ...
- 在jupyter中安装第三方库
在jupyter中安装第三方库 (以安装torchkeras为例) import sys !{sys.executable} -m pip install torchkeras
- 解决极值中的神奇设k法_神奇宝贝Go拥有对您的Google帐户的完全访问权限。 这是解决方法[更新]...
解决极值中的神奇设k法 To say Pokémon GO is wildly popular would be a vast understatement. To say the app's use ...
- 在vscode的jupyter中使用plotly绘图,图片显示不出来
问题: 在vscode的jupyter中使用plotly绘图时,发现程序无报错,下方也留有一块显示图片的区域,但是图片就是加载不出,显示为空. 解决: 从其他博客了解到,是vscode渲染的问题,下载 ...
- R语言ggplot2可视化:jupyter中设置全局图像大小、jupyter中自定义单个ggplot2图像结果的大小
R语言ggplot2可视化:jupyter中设置全局图像大小.jupyter中自定义单个ggplot2图像结果的大小 目录
- python调用qq互联_Django项目中实现使用qq第三方登录功能
使用qq登录的前提是已经在qq互联官网创建网站应用并获取到QQ互联中网站应用的APP ID和APP KEY 1,建路由 # qq登录 path('loginQq/',qq.loginQq,name=' ...
- jupyter中python3如何导入文件_Python·Jupyter Notebook各种使用方法
PythonJupyter Notebook各种使用方法记录持续更新 一 Jupyter NoteBook的安装 1 新版本Anaconda自带Jupyter 2 老版本Anacodna需自己安装Ju ...
- java中的神奇this
java中的神奇"this",神奇的原因事它能不用new就可以直接创造一个对象出来,后来研究发现,其实java的"this"使用时,也是"new&qu ...
- Android 项目中常用到的第三方组件
项目中常用到的第三方组件 1 社会化分享 ShareSDK-Core-2.5.9.jar ShareSDK-QQ-2.5.9.jar ShareSDK-QZone-2.5.9.jar ShareSDK ...
最新文章
- 如何解决IIS7上传文件大小限制【转】
- 一些Java面试技巧分享,你不能错过!
- Python之精心整理的二十五个文本提取及NLP相关的处理案例
- 视频教程--ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库
- SSM 整合 2:Java EE 开发环境的搭建(JDK 配置、Tomcat 安装、IDE 安装、IDE 集成 Tomcat、Spring 及其组件的下载)
- mysql c null_MySQL中NULL字段的比较问题
- Sass函数:random()函数
- 开创先河!《王者荣耀国际版》成为东南亚运动会正式比赛项目
- win10+ubuntu双系统安装方案
- which 命令详解
- python透明图片合并_如何使用PIL将透明png图像与另一个图像合并
- 普通队列(数组实现)
- finecms如何调用多个指定栏目的内容
- 【九天教您南方cass 9.1】01 安装Cad和Cass9.1
- 百度杀毒软件2013低调发布 仅面向泰国市场推出
- android底部抽屉库,Xamarin.Android之简单的抽屉布局
- QA与SQA到底有什么区别和联系?他们的职责和工作内容是什么?QC,QM又是什么?
- 大家好,才是真的好「博客出书的故事②」
- 语法糖 Syntactic sugar: 复杂代码的等价简洁替代
- web前端学习到什么程度可以面试工作
热门文章
- linux cmake 安装mysql5.5.11,以及更高版本
- MySQL索引面试题:优化 索引分类
- Bootstrap的form-group form-control input-group button-group
- java的Deque栈_Java使用Deque实现堆栈的方法
- 排序算法有哪些_超强整理,科班算法岗的秋招之路
- redhat安装wine教程_Ubuntu怎么下载应用并安装应用
- matlab最小错误率决策,利用MATLAB实现最小错误率贝叶斯判别
- 中文表示什么_越南水果摊贴出中文标语,看清文字内容后,中国游客:不再吃了...
- php namespace原理作用,php 命名空间(namespace)原理与用法实例小结
- asp 取数据 计算_地学数据 | 地理空间数据获取方式汇总