秒啊,速來get這9個jupyter實用技巧

費弗裡發表於2021-02-04

1 簡介

  jupyter notebookjupyter lab作為廣受歡迎的ide,尤其適合開展資料分析相關工作,而掌握它們相關的一些實用技巧,勢必會大大提升日常工作效率。而今天我就來給大家介紹9個非常實用的jupyter小技巧~

秒啊,速來get這9個jupyter實用技巧
圖1

2 9個jupyter實用技巧

2.1 在同一個output裡顯示多個輸出結果

  我們都知道,在jupyter中同一個cell內,如果不使用print等函式,那麼就只有最後一個呼叫的變數結果會被列印顯示出來:

秒啊,速來get這9個jupyter實用技巧
圖2

  而只要配合ipython執行下列程式碼之後,就可以實現多輸出結果的列印:

from IPython.core.interactiveshell import InteractiveShell

InteractiveShell.ast_node_interactivity = 'all'
秒啊,速來get這9個jupyter實用技巧
圖3

  可以看到,這時我們無論輸出幾個元素都會被列印出來非常方便~

2.2 在單元格中直接執行終端命令

  在jupyter中我們可以利用!加上終端命令的形式,在單元格中直接執行命令,非常的方便(但要注意如果有需要輸入y/n確認等情況,請把類似-y的引數帶上否則無法繼續):

秒啊,速來get這9個jupyter實用技巧
圖4

2.3 利用%who列出當前所有變數名

  有些情況下,我們需要搞清楚當前kernel下有哪些已被建立的變數,這時魔法命令%who就非常實用:

秒啊,速來get這9個jupyter實用技巧
圖5

  也可以帶上引數輸出指定型別的變數名:

秒啊,速來get這9個jupyter實用技巧
圖6

2.4 使用多游標模式

  很多情況下,我們針對同一個單元格內的程式碼,要修改的地方比較多的話,就可以配合jupyter中的多游標模式,譬如按住ctrl鍵點選不同的地方:

秒啊,速來get這9個jupyter實用技巧
圖7

  或者按住alt迅速矩形選擇(會按照每行相同字元數進行選擇):

秒啊,速來get這9個jupyter實用技巧
圖8

2.5 給自己的程式設定一個鬧鐘

  當我們的一段程式需要執行較長時間時,我們往往不會幹守著它執行完成,這時可以利用一些小技巧,在程式執行完成後給自己響起鬧鐘提示,譬如在windows下可以參考下面的例子設定,大家可以親自試一試非常的有意思~:

import winsound
import time

# 假裝執行耗時任務
time.sleep(10)

duration = 3000  # 3000毫秒即3秒
freq = 440  # 設定響聲頻率

# 鬧鐘響起
winsound.Beep(freq, duration)

2.6 針對API進行模糊查詢

  有些時候我們在程式設計時可能會忘記某個函式或方法的全稱,只依稀記得其中的某個單詞或片段,這種情況下我們就可以參考下列方式使用*萬用字元進行模糊查詢:

秒啊,速來get這9個jupyter實用技巧
圖9

2.7 設定顯示行標號

  jupyter預設情況下是不顯示程式碼行標的,這在我們執行出錯之後很是不好尋找到底是哪一行出錯,事實上我們可以通過設定來解決這個問題,譬如jupyter lab中設定方式如下:

秒啊,速來get這9個jupyter實用技巧
圖10

2.8 阻止matplotlib多餘文字內容輸出

  我們在用matplotlib繪圖時一定遇到過顯示影像的同時跟著輸出了一段文字,這是因為matplotlib的很多API是有返回值的,因此我們只需要最後一行末尾加上;阻止輸出即可:

秒啊,速來get這9個jupyter實用技巧
圖11

2.9 配合watermark自動列印版本資訊

  在很多情況下,我們書寫程式碼匯入各種三方庫之後,會習慣性的列印出各種版本資訊,從而輔助之後的程式碼複用,這種情況下我們就可以配合watermark來自動幫我們幹這些事。

  利用pip install watermark安裝完成後,就可以參照下面的方式給自己的notebook新增各種記錄資訊~

秒啊,速來get這9個jupyter實用技巧
圖12

  以上就是本文的全部內容,歡迎在評論區與我進行討論~

相關文章