全文共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,加入讀者圈,一起讨論最新鮮的人工智能科技哦~)