Jupyter中那些神奇的第三方拓展魔术命令
1 簡介
無論是jupyter notebook還是jupyter lab,都可以使用ipython中的眾多自帶「魔術命令」來實現豐富的輔助功能,諸如%time之類的。
這些都已經是老生常談的知識沒什么好說的,但我們今天要給大家介紹的,則是一些實用的基于「第三方拓展」的魔術命令,從而極大程度上擴展jupyter的功能。
圖12 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中那些神奇的第三方拓展魔术命令的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 分享3 个Python冷知识
 - 下一篇: 好习惯!pandas 8 个常用的 in