Python進階(4) Jupyter Notebook

0. 前言

  • 安裝:pip install jupyter

1. 遠程訪問

1.1. 方法一

  • 第一步:生成配置文件 jupyter notebook --generate-config
  • 第二步:進入python命令行,生成密碼。
>>> from notebook.auth import passwd
>>> passwd()
Enter password:
Verify password:
'sha1:xxxxxxxxxx'
  • 第三步:修改默認配置文件vim ~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip='*' # 就是設置所有ip皆可訪問
c.NotebookApp.password = u'sha:xxxx...' # 即上一部生成的值
c.NotebookApp.open_browser = False # 禁止自動打開瀏覽器
c.NotebookApp.port = 8888 #隨便指定一個端口
  • 第四步:啓動jupyter jupyter notebook

1.2. 方法二

  • 第一步:新建配置文件 config.json
{
  "NotebookApp": {
    "ip": "0.0.0.0",
    "port": 8888,
    "open_browser": false,
    "token": ""
  }
}
  • 第二步:運行命令 jupyter notebook --config /path/to/config.json >> /dev/null &

2. 小技巧

2.1. 重載模塊

import imp
imp.reload(module_name)

2.2. 執行命令行命令

  • 在語句最開始添加一個感嘆號,如!ls

2.3. 設置主題

  • Github
  • 安裝:pip install jupyterthemes
  • 基本使用:
jt -l  # 查看可用主題列表
jt -r  # 選擇默認主題
jt -t themename  # 選擇主題

2.4. 添加ikernel

  • 安裝 ipykernel 或 jupyter,即pip install ipykernelpip install jupyter
  • 添加 kernel 命令:python -m ipykernel install --name mykernel_name
  • 注意:有可能會因爲權限不足安裝失敗,這時需要執行 sudo /path/to/my/python -m ipykernel install --name mykernel_name

2.5. 計時

  • 在一個cell最開始添加 %%time,會計算當前cell的運行時間。
  • 對某一行添加 %time,則會計算當前行的運行時間。
  • 對某一行添加 %timeit,則會多次運行本行(說是默認跑100000次,但我是的時候跑了1loop,7runs),計算平均時間與方差。

3. 碰到的問題

3.1. 創建文件時 Permission Denied

  • 問題描述:nohup jupyter notebook 是不能正常運行的。
  • 解決:將需要常見文件的文件夾配置權限,即 chmod 777 /path/to/target/dir

3.2. Win10中偶爾出現的Matplotlib問題

  • 問題描述:
    • 當使用 plt.imshow(img) 等展示圖片時不會顯示圖片。
    • 報錯:UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
  • 解決:在import完之後添加 %matplotlib notebook

4. 進階擴展包

  • 安裝:
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install—user
pip install jupyter_nbextensions_configurator
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章