每天用Jupyter卻只懂點run?這十個神技讓效率直接翻倍!
你是不是也這樣用 Jupyter?寫完代碼點運行,注釋全靠 #,調試全憑猜,導出文檔亂成麻...
其實 Jupyter 藏著超多 "隱形 buff"!今天扒出 10 個冷門卻封神的功能,親測每天能省 1 小時??
1. 變量 "定位器":%who & %whos
痛點解決:調試時突然忘記變量名?命名重復導致報錯?
- %who:快速列出當前命名空間所有變量(極簡清單)
- %whos:顯示變量類型、尺寸甚至值(詳細表格)
import numpy as np
data = np.array([1,2,3])
%whos # 輸出:data numpy.ndarray (3,) [1 2 3]調試神器:雜亂筆記本秒變 "變量地圖"。
2. 速度 "裁判":%timeit
實用場景:對比兩個數據處理函數哪個更快?
只需在代碼前加魔法命令,Jupyter 自動多次運行取平均值:
%timeit [i**2 for i in range(1000)] # 列表推導式
%timeit np.square(np.arange(1000)) # numpy向量運算冷知識:加%%timeit(雙百分號)可測試整個單元格速度。
3. 終端 "連接器":! 命令
顛覆操作:不用切窗口就能執行終端命令!
!ls # 查看當前目錄文件
!pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple # 加速裝包
!cat data.csv # 預覽文件內容效率暴擊:代碼 + 終端操作無縫銜接
4. 代碼 "導出機":%%writefile
正確用法:在單元格頂部加命令,一鍵將代碼存為.py 文件:
%%writefile my_utils.py
def clean_data(df):
return df.dropna().reset_index(drop=True)=驗證:用!cat ``my_utils.py查看導出結果。
5. 語法 "字典":? & ??
告別谷歌:忘記函數用法時的急救包。
len? # 單個?:顯示函數概述(參數、返回值)
pd.DataFrame?? # 兩個?:查看完整源代碼6. 快捷鍵 "三連殺"
這組組合拳每天能省 50 次鼠標點擊!
快捷鍵 | 效果 |
Shift + Enter | 運行單元格 + 跳轉到下一個 |
Ctrl + Enter | 運行單元格 + 停留在當前位置 |
Alt + Enter | 運行單元格 + 下方插入新單元格 |
7. Markdown"美化術"
不止是寫注釋!用 Markdown 把筆記變正式文檔:
# 一級標題(報告標題)
## 二級標題(章節名)
- 帶編號列表:1. 數據清洗 2. 建模訓練
- 數學公式:$y = wx + b$(線性回歸)
- 插入圖片:搭配擴展可自動生成目錄(后文有講)。
8. 大筆記 "折疊術"
解決痛點:幾百行的筆記本翻到崩潰?
分版本安裝
- Jupyter Notebook:
pip install jupyter_contrib_nbextensions # 安裝擴展集
jupyter contrib nbextension install --user # 配置重啟后點 "Nbextensions",勾選 "Collapsible Headings"。
- Jupyter Lab(需 3.0 + 版本):直接在擴展管理器搜 "Collapsible Headings" 安裝
神操作
點擊標題旁小三角折疊,命令模式按T鍵快速切換狀態。
9. 導出 "凈化術":nbconvert + 標簽
?? 場景:給別人看的報告要隱藏調試代碼?
步驟:
1)加標簽:視圖→單元格工具欄→標簽,輸入以下關鍵詞:
- remove_input:隱藏代碼(保留輸出)
- remove_output:隱藏輸出(保留代碼)
- remove_cell:整行刪除
2)導出命令(終端執行):
# 導出無調試代碼的HTML
jupyter nbconvert --to html --TagRemovePreprocessor.remove_input_tags="{'remove_input'}" 筆記.ipynb
# 導出PDF(需先裝LaTeX)
jupyter nbconvert --to pdf --TagRemovePreprocessor.remove_cell_tags="{'remove_cell'}" 筆記.ipynb10. 智能 "提示器":Tab 鍵
?? 比百度快 10 倍:輸入一半按 Tab 鍵。
- 變量 / 函數名自動補全
- 顯示對象的所有方法(比如df.+Tab)
- 按住Shift+Tab:懸浮顯示函數文檔字符串
寫在最后
Jupyter 的強大藏在細節里:用%whos避免變量混亂,用折疊標題理清邏輯,用 nbconvert 輸出干凈報告...



































