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

2022-01-09 20:53:47 字數 2415 閱讀 3887

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

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

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

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

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

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

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

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

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

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

import winsound

import time

# 假裝執行耗時任務

time.sleep(10)

duration = 3000 # 3000毫秒即3秒

freq = 440 # 設定響聲頻率

# 鬧鐘響起

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

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

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

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

圖12

這問題怎麼解決啊?

這問題怎麼解決啊?你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫作體驗 在創作中心設定你喜愛的 高亮樣式,markdown將 片顯示選擇的高亮樣式進...

DirectX 這問題纏繞我多日啊

1 createdevice.obj error lnk2028 無法解析的標記 0a000035 extern c struct idirect3d9 stdcall direct3dcreate9 unsigned int direct3dcreate9 j14ygpauidirect3d9 i...

EOJ 3366 這題沒驗過啊?

ultmaster 和 infiniteee 碼力都很強,所以他們決定通過遊戲來決定誰來驗題。給他們倆乙個數 n,現在他倆輪流報數,infiniteee 先報,但是每次報的數只能從 2 到 9 中選取,每次報完數都會把結果累加,如果某個人報完數恰好使累加和大於或等於 n,則他獲勝。假設兩個人都足夠聰...