1. 程式人生 > >Python·Jupyter Notebook各種使用方法

Python·Jupyter Notebook各種使用方法

1、更改Jupyter notebook的工作空間

Jupyter的工作空間在哪裡指定?

在cmd中輸入jupyter notebook --generate-config

如果該配置檔案已經存在,那麼,會出現如下資訊,從中可以見到配置檔案存在的位置

在其配置檔案jupyter_notebook_config.py中,找到

# The directory to use for notebooks and kernels.
# c.NotebookApp.notebook_dir = u''

該句就是用來指定其工作空間的。例如,現在想要將工作空間變為E:\Jupyter,那麼,需要做如下更改(要記得刪掉註釋#)


2、Jupyter的各種快捷鍵

  • 執行當前cell,並自動跳到下一個cell:Shift Enter

  • 執行當前cell,執行後不自動調轉到下一個cell:Ctrl-Enter

  • 是當前的cell進入編輯模式:Enter

  • 退出當前cell的編輯模式:Esc

  • 刪除當前的cell:雙D

  • 進入下一個cell:雙A (前面)或 Alt+Enter(後面)

  • 為當前的cell加入line number:單L

  • 將當前的cell轉化為具有一級標題的maskdown:單1

  • 將當前的cell轉化為具有二級標題的maskdown:單2

  • 將當前的cell轉化為具有三級標題的maskdown:單3

  • 為一行或者多行新增/取消註釋:Crtl /

  • 撤銷對某個cell的刪除:z

  • 瀏覽器的各個Tab之間切換:Crtl PgUpCrtl PgDn

  • 快速跳轉到首個cell:Crtl Home

  • 快速跳轉到最後一個cell:Crtl End

  • home 一行的開始

  • end 一行的結束

  • ctrl + ?  註釋

  • shift + tab 查詢函式的註解

3、Jupyter Notebook如何匯入程式碼

即匯入程式碼到jupyter notebook的cell中

3.1 將本地的.py檔案load到jupyter的一個cell中

問題背景:有一個test.py檔案,需要將其載入到jupyter的一個cell中
test.py內容如下:

import caffe
SolverName = "/root/workspace"
sovler = caffe.AdamSolver(SolverName)
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

方法步驟
(1)在需要匯入該段程式碼的cell中輸入

%load test.py #test.py是當前路徑下的一個python檔案
  • 1
  • 1

這裡寫圖片描述

(2)執行該cell
利用快捷鍵“Shift+Enter”,可以看到如下結果:
這裡寫圖片描述

(3)可以看到,執行後,%load test.py被自動加入了註釋符號#,test.py中的所有程式碼都被load到了當前的cell中

3.2 從網路load程式碼到jupyter

  • 在cell中輸入%load http://.....,然後執行該cell,就會將load後面所對應地址的程式碼load到當前的cell中;

    • 首先,在想要匯入該段程式碼的cell中輸入

      %load test.py #test.py是當前路徑下的一個python檔案
      • 1
      • 1
    • 然後,Shift+Enter執行,可以看到如下結果:
      利用load匯入python檔案
      可以看到,執行後,%load test.py被自動加入了註釋符號#,test.py中的所有程式碼都被load到了當前的cell中

4、Jupyter執行python檔案

  • 利用jupyter的cell是可以執行python檔案的,即在cell中執行如下程式碼:
%run file.py
  • 1
  • 1

file.py為要執行的python程式,結果會顯示在該cell中
這裡寫圖片描述
這裡寫圖片描述

5、Jupyter一些其他瑣碎用法

5.1 jupyter的cell可以作為unix command使用

具體方法為:在unitx command前面加入一個感嘆號“!”

例子:
檢視python版本:!python --version
執行python檔案:!python myfile.py

5.2 Magic functions

5.3 獲取current working directory

即當前執行的程式碼所在的路徑
具體方法:current_path = %pwd
這樣得到的current_path就是當前工作路徑的字元轉

5.4 使用Matplotlib繪圖

在Jupyter Notebook中,如果使用Matplotlib繪圖,有時是彈不出影象框的,此時,可以在開頭加入

%matplotlib inline
  • 1
  • 1

6、Jupyter中的Markdown

6.1 在jupyter中設定link,需要設定兩部分:

  • 要跳到的位置(the destination)
    需要在要跳轉到的位置新增下面語句:

    <a id='the_destination'></a>
    • 1
    • 1

    這裡的id取值任意賦值,下面在新增連結時要用

  • 需要新增連結的文字(an internal hyperlink to the destination),即點選該處可以跳轉到the destination,在需要新增連結的文字後面加入:

    [需要新增連線的文字](#the_destination)
    • 1
    • 1
  • 下面是一個例子:
    原始碼:
    這裡寫圖片描述
    效果圖:
    這裡寫圖片描述

6.2 為Jupyter Notebook新增目錄功能

  • 原始的Jupyter是不支援markdown新增目錄功能的
  • 具體方法:
    • 利用Anaconda安裝Jupyter Notebook extensions
      conda install -c conda-forge jupyter_contrib_nbextensions
      image_1b4e9lcot1eo9ing1kk19l3t2713.png-71.7kB
    • 開啟Jupyter Notebook,在它的(新增的)Nbextensions標籤下勾選“Table of Contents(2)”
      image_1b4ea0o2i1jofnhlu1avj53jl9.png-105.3kB
    • 開啟一個.jpynb檔案,發現,目錄功能可用了!
      image_1b4ea6tov2ld1pckpnlujf4g513.png-101kB