国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

Jupyter Notebook 安裝和使用保姆級教程

共 15542字,需瀏覽 32分鐘

 ·

2022-02-16 21:51

在下方公眾號后臺回復(fù):JGNB,可獲取杰哥原創(chuàng)的 PDF 手冊。
來源:Raxxie

一、什么是Jupyter Notebook?

1. 簡介

Jupyter Notebook是基于網(wǎng)頁的用于交互計算的應(yīng)用程序。其可被應(yīng)用于全過程計算:開發(fā)、文檔編寫、運行代碼和展示結(jié)果?!狫upyter Notebook官方介紹

簡而言之,Jupyter Notebook是以網(wǎng)頁的形式打開,可以在網(wǎng)頁頁面中「直接」編寫代碼和運行代碼,代碼的運行結(jié)果也會直接在代碼塊下顯示。如在編程過程中需要編寫說明文檔,可在同一個頁面中直接編寫,便于作及時的說明和解釋。

2. 組成部分

① 網(wǎng)頁應(yīng)用

網(wǎng)頁應(yīng)用即基于網(wǎng)頁形式的、結(jié)合了編寫說明文檔、數(shù)學(xué)公式、交互計算和其他富媒體形式的工具。「簡言之,網(wǎng)頁應(yīng)用是可以實現(xiàn)各種功能的工具?!?/strong>

② 文檔

即Jupyter Notebook中所有交互計算、編寫說明文檔、數(shù)學(xué)公式、圖片以及其他富媒體形式的輸入和輸出,都是以文檔的形式體現(xiàn)的。
這些文檔是保存為后綴名為.ipynbJSON格式文件,不僅便于版本控制,也方便與他人共享。
此外,文檔還可以導(dǎo)出為:HTML、LaTeX、PDF等格式。

3. Jupyter Notebook的主要特點

  1. 編程時具有「語法高亮」、縮進、tab補全的功能。
  2. 可直接通過瀏覽器運行代碼,同時在代碼塊下方展示運行結(jié)果。
  3. 以富媒體格式展示計算結(jié)果。富媒體格式包括:HTML,LaTeX,PNG,SVG等。
  4. 對代碼編寫說明文檔或語句時,支持Markdown語法。
  5. 支持使用LaTeX編寫數(shù)學(xué)性說明。

二、安裝Jupyter Notebook

0. 先試用,再決定

如果看了以上對Jupyter Notebook的介紹你還是拿不定主意究竟是否適合你,那么不要擔(dān)心,你可以先「免安裝試用體驗」一下,然后再做決定。
值得注意的是,官方提供的同時試用是有限的,如果你點擊鏈接之后進入的頁面如下圖所示,那么不要著急,過會兒再試試看吧。
試用失敗
如果你足夠幸運,那么你將看到如下界面,就可以開始體驗啦。
主界面

編輯頁面

1. 安裝

① 安裝前提

安裝Jupyter Notebook的前提是需要安裝了Python(3.3版本及以上,或2.7版本)。

② 使用Anaconda安裝

如果你是小白,那么建議你通過安裝Anaconda來解決Jupyter Notebook的安裝問題,因為Anaconda已經(jīng)自動為你安裝了Jupter Notebook及其他工具,還有python中超過180個科學(xué)包及其依賴項。
你可以通過進入Anaconda的官方下載頁面自行選擇下載;
常規(guī)來說,安裝了Anaconda發(fā)行版時已經(jīng)自動為你安裝了Jupyter Notebook的,但如果沒有自動安裝,那么就在終端(Linux或macOS的“終端”,Windows的“Anaconda Prompt”,以下均簡稱“終端”)中輸入以下命令安裝:
conda install jupyter notebook

③ 使用pip命令安裝

如果你是有經(jīng)驗的Python玩家,想要嘗試用pip命令來安裝Jupyter Notebook,那么請看以下步驟吧!接下來的命令都輸入在終端當(dāng)中的噢!

把pip升級到最新版本

pip?install?--upgrade?pip
  • 注意:老版本的pip在安裝Jupyter Notebook過程中或面臨依賴項無法同步安裝的問題。因此「強烈建議」先把pip升級到最新版本。

安裝Jupyter Notebook

pip?install?jupyter

三、運行Jupyter Notebook

0. 幫助

如果你有任何jupyter notebook命令的疑問,可以考慮查看官方幫助文檔,命令如下:
jupyter?notebook?--help
jupyter notebook -h

1. 啟動

① 默認(rèn)端口啟動

在終端中輸入以下命令:
jupyter notebook
執(zhí)行命令之后,在終端中將會顯示一系列notebook的服務(wù)器信息,同時瀏覽器將會自動啟動Jupyter Notebook。
啟動過程中終端顯示內(nèi)容如下:
$?jupyter?notebook
[I?08:58:24.417?NotebookApp]?Serving?notebooks?from?local?directory:?/Users/catherine
[I?08:58:24.417?NotebookApp]?0?active?kernels
[I?08:58:24.417?NotebookApp]?The?Jupyter?Notebook?is?running?at:?http://localhost:8888/
[I?08:58:24.417?NotebookApp]?Use?Control-C?to?stop?this?server?and?shut?down?all?kernels?(twice?to?skip?confirmation).
  • 注意:之后在Jupyter Notebook的所有操作,都請保持終端「不要關(guān)閉」,因為一旦關(guān)閉終端,就會斷開與本地服務(wù)器的鏈接,你將無法在Jupyter Notebook中進行其他操作啦。
瀏覽器地址欄中默認(rèn)地將會顯示:http://localhost:8888。其中,“l(fā)ocalhost”指的是本機,“8888”則是端口號。
如果你「同時」啟動了多個Jupyter Notebook,由于默認(rèn)端口“8888”被占用,因此地址欄中的數(shù)字將從“8888”起,每多啟動一個Jupyter Notebook數(shù)字就加1,如“8889”、“8890”……

② 指定端口啟動

如果你想自定義端口號來啟動Jupyter Notebook,可以在終端中輸入以下命令:
jupyter?notebook?--port?<port_number>

其中,“”是自定義端口號,直接以數(shù)字的形式寫在命令當(dāng)中,數(shù)字兩邊不加尖括號“<>”。如:jupyter notebook --port 9999,即在端口號為“9999”的服務(wù)器啟動Jupyter Notebook。

③ 啟動服務(wù)器但不打開瀏覽器

如果你只是想啟動Jupyter Notebook的服務(wù)器但不打算立刻進入到主頁面,那么就無需立刻啟動瀏覽器。在終端中輸入:
jupyter notebook --no-browser

此時,將會在終端顯示啟動的服務(wù)器信息,并在服務(wù)器啟動之后,顯示出打開瀏覽器頁面的鏈接。當(dāng)你需要啟動瀏覽器頁面時,只需要復(fù)制鏈接,并粘貼在瀏覽器的地址欄中,輕按回車變轉(zhuǎn)到了你的Jupyter Notebook頁面。
no_browser
例圖中由于在完成上面內(nèi)容時我同時啟動了多個Jupyter Notebook,因此顯示我的“8888”端口號被占用,最終分配給我的是“8889”。

2. 主頁面

① 主頁面內(nèi)容

當(dāng)執(zhí)行完啟動命令之后,瀏覽器將會進入到Notebook的主頁面,如下圖所示。

如果你的主頁面里邊的文件夾跟我的不同,或者你在疑惑為什么首次啟動里邊就已經(jīng)有這么多文件夾,不要擔(dān)心,這里邊的文件夾全都是你的家目錄里的目錄文件。你可以在終端中執(zhí)行以下2步來查看:
cdcd -cd ~cd /Users/
  • 這個命令將會進入你的家目錄。
  • ” 是用戶名。用戶名兩邊不加尖括號“<>”。
ls
  • 這個命令將會展示你家目錄下的文件。

② 設(shè)置Jupyter Notebook文件存放位置

如果你不想把今后在Jupyter Notebook中編寫的所有文檔都直接保存在家目錄下,那你需要修改Jupyter Notebook的文件存放路徑。

⑴ 創(chuàng)建文件夾/目錄

  • Windows用戶在想要存放Jupyter Notebook文件的「磁盤」「新建文件夾」并為該文件夾命名;雙擊進入該文件夾,然后復(fù)制地址欄中的路徑。
  • Linux/macOS用戶在想要存放Jupyter Notebook文件的位置「創(chuàng)建目錄」并為目錄命名,命令為:mkdir;進入目錄,命令為:cd;查看目錄的路徑,命令為:pwd;復(fù)制該路徑。
  • 注意:“”是自定義的目錄名。目錄名兩邊不加尖括號“<>”。

⑵ 配置文件路徑

  • 一個便捷獲取配置文件所在路徑的命令:
jupyter notebook --generate-config
  • 注意:這條命令雖然可以用于查看配置文件所在的路徑,但主要用途是是否將這個路徑下的配置文件「替換」「默認(rèn)配置文件」。如果你是第一次查詢,那么「或許」不會出現(xiàn)下圖的提示;若文件已經(jīng)存在或被修改,使用這個命令之后會出現(xiàn)詢問“Overwrite /Users/raxxie/.jupyter/jupyter_notebook_config.py with default config? [y/N]”,即“用默認(rèn)配置文件覆蓋此路徑下的文件嗎?”,如果按“y”,則完成覆蓋,那么之前所做的修改都將失效;如果只是為了查詢路徑,那么一定要輸入“N”。

常規(guī)的情況下,Windows和Linux/macOS的配置文件所在路徑和配置文件名如下所述:
  • Windows系統(tǒng)的配置文件路徑:C:\Users\\.jupyter\
  • Linux/macOS系統(tǒng)的配置文件路徑:/Users//.jupyter/~/.jupyter/
  • 配置文件名:jupyter_notebook_config.py
  • 注意:
① “”為你的用戶名。用戶名兩邊不加尖括號“<>”。
② Windows和Linux/macOS系統(tǒng)的配置文件存放路徑其實是相同的,只是系統(tǒng)不同,表現(xiàn)形式有所不同而已。
③ Windows和Linux/macOS系統(tǒng)的配置文件也是相同的。文件名以“.py”結(jié)尾,是Python的可執(zhí)行文件。
④ 如果你不是通過一步到位的方式前往配置文件所在位置,而是一層一層進入文件夾/目錄的,那么當(dāng)你進入家目錄后,用ls命令會發(fā)現(xiàn)找不到“.jupyter”文件夾/目錄。這是因為凡是以“.”開頭的目錄都是隱藏文件,你可以通過ls -a命令查看當(dāng)前位置下所有的隱藏文件。

⑶ 修改配置文件

  • Windows系統(tǒng)的用戶可以使用文檔編輯工具或IDE打開“jupyter_notebook_config.py”文件并進行編輯。常用的文檔編輯工具和IDE有記事本、Notepad++、vim、Sublime Text、PyCharm等。其中,vim是沒有圖形界面的,是一款學(xué)習(xí)曲線較為陡峭的編輯器,其他工具在此不做使用說明,因為上手相對簡單。通過vim修改配置文件的方法請繼續(xù)往下閱讀。
  • Linux/macOS系統(tǒng)的用戶建議直接通過終端調(diào)用vim來對配置文件進行修改。具體操作步驟如下:
? 打開配置文件
打開終端,輸入命令:
vim?~/.jupyter/jupyter_notebook_config.py


vim打開配置文件
執(zhí)行上述命令后便進入到配置文件當(dāng)中了。
? 查找關(guān)鍵詞
進入配置文件后查找關(guān)鍵詞“c.NotebookApp.notebook_dir”。查找方法如下:
進入配置文件后不要按其他鍵,用「英文半角」直接輸入/c.NotebookApp.notebook_dir,這時搜索的關(guān)鍵詞已在文檔中高亮顯示了,按回車,光標(biāo)從底部切換到文檔正文中被查找關(guān)鍵詞的首字母。
? 編輯配置文件
「小寫i」進入編輯模式,底部出現(xiàn)“--INSERT--”說明成功進入編輯模式。使用方向鍵把光標(biāo)定位在第二個單引號上(光標(biāo)定位在哪個字符,就在這個字符前開始輸入),把“⑴ 創(chuàng)建文件夾/目錄”步驟中復(fù)制的路徑粘貼在此處。
? 取消注釋
把該行行首的**井號(#)**刪除。因為配置文件是Python的可執(zhí)行文件,在Python中,井號(#)表示注釋,即在編譯過程中不會執(zhí)行該行命令,所以為了使修改生效,需要刪除井號(#)。
config
? 保存配置文件
先按ESC鍵,從編輯模式退出,回到命令模式。
再用「英文半角」直接輸入:wq,回車即成功保存且退出了配置文件。
注意:
  • 「冒號(:)」 一定要有,且也是「英文半角」
  • w:保存。
  • q:退出。
? 驗證
在終端中輸入命令jupyter notebook打開Jupyter Notebook,此時你會看到一個清爽的界面,恭喜!
modified
? 注意
  • 以上所有命令均以「英文半角」格式輸入,若有報錯,請嚴(yán)格檢查這兩個條件,「英文」「半角」。
  • 這里僅介紹了vim編輯器修改配置文件的方法,沒有對vim編輯器的詳細(xì)使用進行講解,所以無需了解vim編輯器的具體使用方法,只需要按照上述步驟一定可以順利完成修改!
  • 推薦有時間和經(jīng)歷時學(xué)習(xí)一下vim編輯器的使用。這款強大的編輯器將會成為你未來工作中的利器。

四、Jupyter Notebook的基本使用

1. Files頁面

Files頁面
此時你的界面當(dāng)中應(yīng)該還沒有“Conda”和“Nbextensions”類目。不要著急,這兩個類目將分別在“五、拓展功能”中的“1.關(guān)聯(lián)Jupyter Notebook和conda的環(huán)境和包——‘nb_conda’”和“2.Markdown生成目錄”中安裝。
Files頁面是用于管理和創(chuàng)建文件相關(guān)的類目。
對于現(xiàn)有的文件,可以通過勾選文件的方式,對選中文件進行復(fù)制、重命名、移動、下載、查看、編輯和刪除的操作。
同時,也可以根據(jù)需要,在“New”下拉列表中選擇想要創(chuàng)建文件的環(huán)境,進行創(chuàng)建“ipynb”格式的筆記本、“txt”格式的文檔、終端或文件夾。如果你創(chuàng)建的環(huán)境沒有在下拉列表中顯示,那么你需要依次前往“五、拓展功能”中的“1.關(guān)聯(lián)Jupyter Notebook和conda的環(huán)境和包——‘nb_conda’”和“六、增加內(nèi)核——‘ipykernel’”中解決該問題。

① 筆記本的基本操作

筆記本的使用
上圖展示的是筆記本的基本結(jié)構(gòu)和功能。根據(jù)圖中的注解已經(jīng)可以解決絕大多數(shù)的使用問題了!
工具欄的使用如圖中的注解一樣直觀,在此不過多解釋。需要特別說明的是“單元格的狀態(tài)”,有Code,Markdown,Heading,Raw NBconvert。其中,最常用的是前兩個,分別是代碼狀態(tài),Markdown編寫狀態(tài)。Jupyter Notebook已經(jīng)取消了Heading狀態(tài),即標(biāo)題單元格。取而代之的是Markdown的一級至六級標(biāo)題。而Raw NBconvert目前極少用到,此處也不做過多講解。
菜單欄涵蓋了筆記本的所有功能,即便是工具欄的功能,也都可以在菜單欄的類目里找到。然而,并不是所有功能都是常用的,比如Widgets,Navigate。Kernel類目的使用,主要是對內(nèi)核的操作,比如中斷、重啟、連接、關(guān)閉、切換內(nèi)核等,由于我們在創(chuàng)建筆記本時已經(jīng)選擇了內(nèi)核,因此切換內(nèi)核的操作便于我們在使用筆記本時切換到我們想要的內(nèi)核環(huán)境中去。由于其他的功能相對比較常規(guī),根據(jù)圖中的注解來嘗試使用筆記本的功能已經(jīng)非常便捷,因此不再做詳細(xì)講解。

② 筆記本重命名的兩種方式

⑴ ?筆記本內(nèi)部重命名

在使用筆記本時,可以直接在其內(nèi)部進行重命名。在左上方“Jupyter”的圖標(biāo)旁有程序默認(rèn)的標(biāo)題“Untitled”,點擊“Untitled”然后在彈出的對話框中輸入自擬的標(biāo)題,點擊“Rename”即完成了重命名。

⑵ ?筆記本外部重命名

若在使用筆記本時忘記了重命名,且已經(jīng)保存并退出至“Files”界面,則在“Files”界面勾選需要重命名的文件,點擊“Rename”然后直接輸入自擬的標(biāo)題即可。

⑶ 演示

重命名

2. Running頁面

Running頁面主要展示的是當(dāng)前正在運行當(dāng)中的終端和“ipynb”格式的筆記本。若想要關(guān)閉已經(jīng)打開的終端和“ipynb”格式的筆記本,僅僅關(guān)閉其頁面是無法徹底退出程序的,需要在Running頁面點擊其對應(yīng)的“Shutdown”。更多關(guān)閉方法可以查閱“八、關(guān)閉和退出”中的“1.關(guān)閉筆記本和終端”
Running

3. Clusters頁面

Clusters tab is now provided by IPython parallel. See 'IPython parallel' for installation details.
?
Clusters類目現(xiàn)在已由IPython parallel對接,且由于現(xiàn)階段使用頻率較低,因此在此不做詳細(xì)說明,想要了解更多可以訪問IPython parallel的官方網(wǎng)站。

4. Conda頁面

Conda頁面主要是Jupyter Notebook與Conda關(guān)聯(lián)之后對Conda環(huán)境和包進行直接操作和管理的頁面工具。詳細(xì)信息請直接查閱“五、拓展功能”中的“1.關(guān)聯(lián)Jupyter Notebook和conda的環(huán)境和包——‘nb_conda’”。這是目前使用Jupyter Notebook的必備環(huán)節(jié),因此請務(wù)必查閱。

5. Nbextensions頁面

nbextensions
Nbextensions頁面提供了多個Jupyter Notebook的插件,使其功能更加強大。該頁面中主要使用的插件有nb_conda,nb_present,Table of Contents(2)。這些功能我們無需完全掌握,也無需安裝所有的擴展功能,根據(jù)本文檔提供的學(xué)習(xí)思路,我們只需要安裝Talbe of Contents(2)即可,該功能可為Markdown文檔提供目錄導(dǎo)航,便于我們編寫文檔。該安裝指導(dǎo)請查閱“五、拓展功能”中的“2.Markdown生成目錄”。

五、拓展功能

1. 關(guān)聯(lián)Jupyter Notebook和conda的環(huán)境和包——“nb_conda”☆

① 安裝

conda install nb_conda

執(zhí)行上述命令能夠?qū)⒛鉩onda創(chuàng)建的環(huán)境與Jupyter Notebook相關(guān)聯(lián),便于你在Jupyter Notebook的使用中,在不同的環(huán)境下創(chuàng)建筆記本進行工作。

② 使用

  • 可以在Conda類目下對conda環(huán)境和包進行一系列操作。

    conda類目
  • 可以在筆記本內(nèi)的“Kernel”類目里的“Change kernel”切換內(nèi)核。

    切換內(nèi)核

③ 卸載

canda?remove?nb_conda

執(zhí)行上述命令即可卸載nb_conda包。

2. Markdown生成目錄

  • 不同于有道云筆記的Markdown編譯器,Jupyter Notebook無法為Markdown文檔通過特定語法添加目錄,因此需要通過安裝擴展來實現(xiàn)目錄的添加。
conda?install?-c?conda-forge?jupyter_contrib_nbextensions

  • 執(zhí)行上述命令后,啟動Jupyter Notebook,你會發(fā)現(xiàn)導(dǎo)航欄多了“Nbextensions”的類目,點擊“Nbextensions”,勾選“Table of Contents ⑵”

    nbextensions
  • 之后再在Jupyter Notebook中使用Markdown,點擊下圖的圖標(biāo)即可使用啦。

    添加目錄

3. Markdown在文中設(shè)置鏈接并定位

在使用Markdown編輯文檔時,難免會遇到需要在文中設(shè)定鏈接,定位在文檔中的其他位置便于查看。因為Markdown可以完美的兼容html語法,因此這種功能可以通過html語法當(dāng)中“a標(biāo)簽”的索引用法來實現(xiàn)。
語法格式如下:
[添加鏈接的正文](#自定義索引詞)
<a?id=自定義索引詞>跳轉(zhuǎn)提示a>
  • 注意:

    1. 語法格式當(dāng)中所有的符號均是「英文半角」。
    2. “自定義索引詞”最好是英文,較長的詞可以用下劃線連接。
    3. “a標(biāo)簽”出現(xiàn)在想要被跳轉(zhuǎn)到的文章位置,html標(biāo)簽除了單標(biāo)簽外均要符合“有頭()必有尾()”的原則。頭尾之間的“跳轉(zhuǎn)提示”是可有可無的。
    4. “a標(biāo)簽”中的“id”值即是為正文中添加鏈接時設(shè)定的“自定義索引值”,這里通過“id”的值實現(xiàn)從正文的鏈接跳轉(zhuǎn)至指定位置的功能。
  • 例:

  • 1.有跳轉(zhuǎn)提示語

    2.無跳轉(zhuǎn)提示語

4. 加載指定網(wǎng)頁源代碼

① 使用場景

想要在Jupyter Notebook中直接加載指定網(wǎng)站的源代碼到筆記本中。

② 方法

執(zhí)行以下命令:
%load URL
其中,URL為指定網(wǎng)站的地址。

③ 例

加載指定網(wǎng)站源代碼

5. 加載本地Python文件

① 使用場景

想在Jupyter Notebook中加載本地的Python文件并執(zhí)行文件代碼。

② 方法

執(zhí)行以下命令:
%load Python文件的絕對路徑

③ 注意

  1. Python文件的后綴為“.py”。
  2. “%load”后跟的是Python文件的「絕對路徑」。
  3. 輸入命令后,可以按CTRL 回車來執(zhí)行命令。第一次執(zhí)行,是將本地的Python文件內(nèi)容加載到單元格內(nèi)。此時,Jupyter Notebook會自動將“%load”命令注釋掉(即在前邊加井號“#”),以便在執(zhí)行已加載的文件代碼時不重復(fù)執(zhí)行該命令;第二次執(zhí)行,則是執(zhí)行已加載文件的代碼。

④ 例

加載本地Python文件

6. 直接運行本地Python文件

① 使用場景

不想在Jupyter Notebook的單元格中加載本地Python文件,想要直接運行。

② 方法

執(zhí)行命令:
%run Python文件的絕對路徑

!python3 Python文件的絕對路徑

!python Python文件的絕對路徑

③ 注意

  1. Python文件的后綴為“.py”。
  2. “%run”后跟的是Python文件的「絕對路徑」。
  3. “!python3”用于執(zhí)行Python 3.x版本的代碼。
  4. “!python”用于執(zhí)行Python 2.x版本的代碼。
  5. “!python3”和“!python”屬于 !shell命令 語法的使用,即在Jupyter Notebook中執(zhí)行shell命令的語法。
  6. 輸入命令后,可以按 CTRL 回車 來執(zhí)行命令,執(zhí)行過程中將不顯示本地Python文件的內(nèi)容,直接顯示運行結(jié)果。

④ 例

直接運行Python文件

7. 在Jupyter Notebook中獲取當(dāng)前位置

① 使用場景

想要在Jupyter Notebook中獲取當(dāng)前所在位置的「絕對路徑」

② 方法

%pwd
!pwd

③ 注意

  1. 獲取的位置是當(dāng)前Jupyter Notebook中創(chuàng)建的筆記本所在位置,且該位置為「絕對路徑」
  2. “!pwd”屬于 !shell命令 語法的使用,即在Jupyter Notebook中執(zhí)行shell命令的語法。

④ 例

獲取當(dāng)前路徑

8. 在Jupyter Notebook使用shell命令

① 方法一——在筆記本的單元格中

⑴ 語法

!shell命令
  • 在Jupyter Notebook中的筆記本單元格中用英文感嘆號“!”后接shell命令即可執(zhí)行shell命令。

⑵ 例

shell命令

② 方法二——在Jupyter Notebook中新建終端

⑴ 啟動方法

在Jupyter Notebook主界面,即“File”界面中點擊“New”;在“New”下拉框中點擊“Terminal”即新建了終端。此時終端位置是在你的家目錄,可以通過pwd命令查詢當(dāng)前所在位置的絕對路徑。

⑵ 關(guān)閉方法

在Jupyter Notebook的“Running”界面中的“Terminals”類目中可以看到正在運行的終端,點擊后邊的“Shutdown”即可關(guān)閉終端。

⑶ 例

終端

9. 隱藏筆記本輸入單元格

① 使用場景

在Jupyter Notebook的筆記本中無論是編寫文檔還是編程,都有輸入(In [])和輸出(Out [])。當(dāng)我們編寫的代碼或文檔使用的單元格較多時,有時我們只想關(guān)注輸出的內(nèi)容而暫時不看輸入的內(nèi)容,這時就需要隱藏輸入單元格而只顯示輸出單元格。

② 方法一

⑴ 代碼

from?IPython.display?import?display
from?IPython.display?import?HTML
import?IPython.core.display?as?di?#?Example:?di.display_html('

%s:

'?%?str,?raw=True)


#?這行代碼的作用是:當(dāng)文檔作為HTML格式輸出時,將會默認(rèn)隱藏輸入單元格。
di.display_html('',?raw=True)

#?這行代碼將會添加“Toggle code”按鈕來切換“隱藏/顯示”輸入單元格。
di.display_html('''Toggle?code''',?raw=True)
在筆記本第一個單元格中輸入以上代碼,然后執(zhí)行,即可在該文檔中使用“隱藏/顯示”輸入單元格功能。
  • 缺陷:此方法不能很好的適用于Markdown單元格。

⑵ 例

隱藏/顯示方法一

③ 方法二

⑴ 代碼

from?IPython.display?import?HTML

HTML('''<script>
code_show=true;?
function?code_toggle()?{
?if?(code_show){
?$('div.input').hide();
?}?else?{
?$('div.input').show();
?}
?code_show?=?!code_show
}?
$(?document?).ready(code_toggle);
script>
<form?action="javascript:code_toggle()"><input?type="submit"?value="Click?here?to?toggle?on/off?the?raw?code.">form>''')
在筆記本第一個單元格中輸入以上代碼,然后執(zhí)行,即可在該文檔中使用“隱藏/顯示”輸入單元格功能。
  • 缺陷:此方法不能很好的適用于Markdown單元格。

⑵ 例

隱藏/顯示方法二

10. 魔術(shù)命令

由于目前暫時用不到過多的魔術(shù)命令,因此暫時先參考官網(wǎng)的文檔。

六、增加內(nèi)核——“ipykernel” ☆

1. 使用場景

  1. 場景一:同時用不同版本的Python進行工作,在Jupyter Notebook中無法切換,即“New”的下拉菜單中無法使用需要的環(huán)境。
  2. 場景二:創(chuàng)建了不同的虛擬環(huán)境(或許具有相同的Python版本但安裝的包不同),在Jupyter Notebook中無法切換,即“New”的下拉菜單中無法使用需要的環(huán)境。
接下來將分別用“命令行模式”和“圖形界面模式”來解決以上兩個場景的問題。顧名思義,“命令行模式”即在終端中通過執(zhí)行命令來一步步解決問題;“圖形界面模式”則是通過在Jupyter Notebook的網(wǎng)頁中通過鼠標(biāo)點擊的方式解決上述問題。
“命令行模式”看似比較復(fù)雜,且又劃分了使用場景,但通過這種方式來解決問題可以更好的了解其中的工作原理,比如,每進行一步操作對應(yīng)的命令是什么,而命令的執(zhí)行是為了達(dá)到什么樣的目的,這些可能都被封裝在圖形界面上的一個點擊動作來完成了。對于想更深入了解其運作過程的朋友,可以接著向下閱讀。

2. 解決方法之命令行模式

① 同時使用不同版本的Python

⑴ 在Python 3中創(chuàng)建Python 2內(nèi)核

? pip安裝
  • 首先安裝Python 2的ipykernel包。
python2 -m pip install ipykernel
  • 再為「當(dāng)前用戶」安裝Python 2的內(nèi)核(ipykernel)。
python2 -m ipykernel install --user
  • 注意:“--user”參數(shù)的意思是針對當(dāng)前用戶安裝,而非系統(tǒng)范圍內(nèi)安裝。
? conda安裝
  • 首先創(chuàng)建Python版本為2.x且具有ipykernel的新環(huán)境,其中“”為自定義環(huán)境名,環(huán)境名兩邊不加尖括號“<>”。
conda?create?-n?<env_name>?python=2?ipykernel
  • 然后切換至新創(chuàng)建的環(huán)境。
Windows:?activate?<env_name>
Linux/macOS:?source?activate?<env_name>
  • 「當(dāng)前用戶」安裝Python 2的內(nèi)核(ipykernel)。
python2 -m ipykernel install --user
  • 注意:“--user”參數(shù)的意思是針對當(dāng)前用戶安裝,而非系統(tǒng)范圍內(nèi)安裝。

⑵ 在Python 2中創(chuàng)建Python 3內(nèi)核

? pip安裝
  • 首先安裝Python 3的ipykernel包。
python3 -m pip install ipykernel
  • 再為「當(dāng)前用戶」安裝Python 2的內(nèi)核(ipykernel)。
python3 -m ipykernel install --user
  • 注意:“--user”參數(shù)的意思是針對當(dāng)前用戶安裝,而非系統(tǒng)范圍內(nèi)安裝。
? conda安裝
  • 首先創(chuàng)建Python版本為3.x且具有ipykernel的新環(huán)境,其中“”為自定義環(huán)境名,環(huán)境名兩邊不加尖括號“<>”。
conda?create?-n?<env_name>?python=3?ipykernel
  • 然后切換至新創(chuàng)建的環(huán)境。
Windows:?activate?<env_name>
Linux/macOS:?source?activate?<env_name>
  • 「當(dāng)前用戶」安裝Python 3的內(nèi)核(ipykernel)。
python3 -m ipykernel install --user
  • 注意:“--user”參數(shù)的意思是針對當(dāng)前用戶安裝,而非系統(tǒng)范圍內(nèi)安裝。

② 為不同環(huán)境創(chuàng)建內(nèi)核

⑴ 切換至需安裝內(nèi)核的環(huán)境

Windows:?activate?<env_name>
Linux/macOS:?source?activate?<env_name>
  • 注意:“”是需要安裝內(nèi)核的環(huán)境名稱,環(huán)境名兩邊不加尖括號“<>”。

⑵ 檢查該環(huán)境是否安裝了ipykernel包

conda?list
執(zhí)行上述命令查看當(dāng)前環(huán)境下安裝的包,若沒有安裝ipykernel包,則執(zhí)行安裝命令;否則進行下一步。
conda install ipykernel

⑶ 為當(dāng)前環(huán)境下的當(dāng)前用戶安裝Python內(nèi)核

  • 若該環(huán)境的Python版本為2.x,則執(zhí)行命令:
python2?-m?ipykernel?install?--user?--name?<env_name>?--display-name?"<notebook_name>"
  • 若該環(huán)境的Python版本為3.x,則執(zhí)行命令:
python3?-m?ipykernel?install?--user?--name?<env_name>?--display-name?"<notebook_name>"
  • 注意:
    1. ”為當(dāng)前環(huán)境的環(huán)境名稱。環(huán)境名兩邊不加尖括號“<>”。
    2. ”為自定義顯示在Jupyter Notebook中的名稱。名稱兩邊不加尖括號“<>”,但「雙引號必須加」。
    3. “--name”參數(shù)的值,即“”是Jupyter內(nèi)部使用的,其目錄的存放路徑為~/Library/Jupyter/kernels/。如果定義的名稱在該路徑已經(jīng)存在,那么將自動覆蓋該名稱目錄的內(nèi)容。
    4. “--display-name”參數(shù)的值是顯示在Jupyter Notebook的菜單中的名稱。

⑷ 檢驗

使用命令jupyter notebook啟動Jupyter Notebook;在“Files”下的“New”下拉框中即可找到你在第⑶步中的自定義名稱,此時,你便可以盡情地在Jupyter Notebook中切換環(huán)境,在不同的環(huán)境中創(chuàng)建筆記本進行工作和學(xué)習(xí)啦!

3. 解決方法之圖形界面模式

① 你創(chuàng)建了一個新的環(huán)境,但卻發(fā)現(xiàn)在Jupyter Notebook的“New”中找不到這個環(huán)境,無法在該環(huán)境中創(chuàng)建筆記本。
圖形界面_問題
② 進入Jupyter Notebook → Conda → 在“Conda environment”中點擊你要添加ipykernel包的環(huán)境 → 左下方搜索框輸入“ipykernel” → 勾選“ipykernel” → 點擊搜索框旁的“→”箭頭 → 安裝完畢 → 右下方框內(nèi)找到“ipykernel”說明已經(jīng)安裝成功。
圖形界面_解決
③ 在終端CTRL C關(guān)閉Jupyter Notebook的服務(wù)器然后重啟Jupyter Notebook,在“File”的“New”的下拉列表里就可以找到你的環(huán)境啦。
圖形界面_驗證

七、Jupyter Notebook快捷鍵

1. Mac與Windows特殊按鍵對照表

符號Mac按鍵Windows按鍵
?command
?controlctrl
?optionalt
?shiftshift
?returnreturn
?spacespace
?tabtab
?deletebackspace
?fn ?deletedelete
---

2. Jupyter Notebook筆記本的兩種模式

① 命令模式

  • 命令模式將鍵盤命令與Jupyter Notebook筆記本命令相結(jié)合,可以通過鍵盤不同鍵的組合運行筆記本的命令。
  • esc鍵進入命令模式。
  • 命令模式下,單元格邊框為灰色,且左側(cè)邊框線為藍(lán)色粗線條。
命令模式

② 編輯模式

  • 編輯模式使用戶可以在單元格內(nèi)編輯代碼或文檔。
  • enterreturn鍵進入編輯模式。
  • 編輯模式下,單元格邊框和左側(cè)邊框線均為綠色。
編輯模式

3. 兩種模式的快捷鍵

① 命令模式

快捷鍵用途
F查找和替換
?進入編輯模式
??F打開命令選項板
??P打開命令選項板
P打開命令選項板
??運行當(dāng)前單元格并選中下一個單元格
??運行選中單元格
??運行當(dāng)前單元格并且在下方插入單元格
Y將單元格切換至code狀態(tài)
M將單元格切換至markdown狀態(tài)
R將單元格切換至raw狀態(tài)
1將單元格設(shè)定一級標(biāo)題
2將單元格設(shè)定二級標(biāo)題
3將單元格設(shè)定三級標(biāo)題
4將單元格設(shè)定四級標(biāo)題
5將單元格設(shè)定五級標(biāo)題
6將單元格設(shè)定六級標(biāo)題
選中上方單元格
K選中上方單元格
選中下方單元格
J選中下方單元格
?K向上多選單元格
?↑向上多選單元格
?J向下多選單元格
?↓向下多選單元格
A在上方插入單元格
B在下方插入單元格
X剪切選中單元格
C復(fù)制選中單元格
?V粘貼到上方單元格
V粘貼到下方單元格
Z撤銷刪除
D, D刪除選中單元格
?M合并選中單元格,若直選中一個則與下一個單元格合并
?S保存
S保存
L轉(zhuǎn)換行號
O轉(zhuǎn)換輸出
?O轉(zhuǎn)換滾動輸出
H顯示快捷鍵幫助
I, I中斷Notebook內(nèi)核
O, O重啟Notebook內(nèi)核
esc關(guān)閉頁面
Q關(guān)閉頁面
?L轉(zhuǎn)換所有單元格行號且設(shè)置持續(xù)有效
??向上滾動
?向下滾動

② 編輯模式

Mac快捷鍵Windows快捷鍵用途
??代碼補全或縮進
????提示
?]?]向后縮進
?[?[向前縮進
?A?A全選
?Z?Z撤銷
?/
注釋
?D
刪除該行內(nèi)容
?U
撤銷
?↑?↑光標(biāo)跳轉(zhuǎn)至單元格起始位置
?↓?↓光標(biāo)跳轉(zhuǎn)至單元格最終位置
?←?←光標(biāo)位置左移一個單詞
?→?→光標(biāo)位置右移一個單詞
????刪除前邊一個單詞
????刪除后邊一個單詞
??Z?Y重做
??U??Z重做
????刪除該行光標(biāo)左邊內(nèi)容
????刪除該行光標(biāo)右邊內(nèi)容
?M?M進入命令模式
escesc進入命令模式
??F
打開命令選項板
??P
打開命令選項板
????運行當(dāng)前單元格并選中下一個單元格
????運行選中單元格
????運行當(dāng)前單元格并且在下方插入單元格
??-??-以光標(biāo)所在位置分割單元格
?S?S保存
下移光標(biāo)
上移光標(biāo)

4. 查看和編輯快捷鍵

① 查看快捷鍵

① 進入Jupyter Notebook主界面“File”中。
② 在“New”的下拉列表中選擇環(huán)境創(chuàng)建一個筆記本。
③ 點擊“Help”。
④ 點擊“Keyboard Shortcuts”。

② 編輯快捷鍵

⑴ 方法一

① 進入Jupyter Notebook主界面“File”中。
② 在“New”的下拉列表中選擇環(huán)境創(chuàng)建一個筆記本。
③ 點擊“Help”。
④ 點擊“Keyboard Shortcuts”。
⑤ 彈出的對話框中“Command Mode (press Esc to enable)”旁點擊“Edit Shortcuts”按鈕。

⑵ 方法二

① 進入Jupyter Notebook主界面“File”中。
② 在“New”的下拉列表中選擇環(huán)境創(chuàng)建一個筆記本。
③ 點擊“Help”。
④ 點擊“Edit Keyboard Shortcuts”。

③ 例

查看和編輯快捷鍵

八、關(guān)閉和退出

1. 關(guān)閉筆記本和終端

當(dāng)我們在Jupyter Notebook中創(chuàng)建了終端或筆記本時,將會彈出新的窗口來運行終端或筆記本。當(dāng)我們使用完畢想要退出終端或筆記本時,僅僅「關(guān)閉頁面」是無法結(jié)束程序運行的,因此我們需要通過以下步驟將其完全關(guān)閉。

① 方法一

⑴ 進入“Files”頁面。
⑵ 勾選想要關(guān)閉的“ipynb”筆記本。正在運行的筆記本其圖標(biāo)為綠色,且后邊標(biāo)有“Running”的字樣;已經(jīng)關(guān)閉的筆記本其圖標(biāo)為灰色。
⑶ 點擊上方的黃色的“Shutdown”按鈕。
⑷ 成功關(guān)閉筆記本。
  • 注意:此方法只能關(guān)閉筆記本,無法關(guān)閉終端。

② 方法二

⑴ 進入“Running”頁面。
⑵ 第一欄是“Terminals”,即所有正在運行的終端均會在此顯示;第二欄是“Notebooks”,即所有正在運行的“ipynb”筆記本均會在此顯示。
⑶ 點擊想要關(guān)閉的終端或筆記本后黃色“Shutdown”按鈕。
⑷ 成功關(guān)閉終端或筆記本。
  • 注意:此方法可以關(guān)閉任何正在運行的終端和筆記本。

③ 注意

⑴ 只有“ipynb”筆記本和終端需要通過上述方法才能使其結(jié)束運行。
⑵ “txt”文檔,即“New”下拉列表中的“Text File”,以及“Folder”只要關(guān)閉程序運行的頁面即結(jié)束運行,無需通過上述步驟關(guān)閉。

④ 演示

關(guān)閉筆記本和終端

2. 退出Jupyter Notebook程序

如果你想退出Jupyter Notebook程序,僅僅通過關(guān)閉網(wǎng)頁是無法退出的,因為當(dāng)你打開Jupyter Notebook時,其實是啟動了它的服務(wù)器。
你可以嘗試關(guān)閉頁面,并打開新的瀏覽器頁面,把之前的地址輸進地址欄,然后跳轉(zhuǎn)頁面,你會發(fā)現(xiàn)再次進入了剛才“關(guān)閉”的Jupyter Notebook頁面。
如果你忘記了剛才關(guān)閉的頁面地址,可以在啟動Jupyter Notebook的終端中找到地址,復(fù)制并粘貼至新的瀏覽器頁面的地址欄,會發(fā)現(xiàn)同樣能夠進入剛才關(guān)閉的頁面。
因此,想要徹底退出Jupyter Notebook,需要關(guān)閉它的服務(wù)器。只需要在它啟動的終端上按:
  • Mac用戶:control c
  • Windows用戶:ctrl c
然后在終端上會提示:“Shutdown this notebook server (y/[n])?”輸入y即可關(guān)閉服務(wù)器,這才是徹底退出了Jupyter Notebook程序。此時,如果你想要通過輸入剛才關(guān)閉網(wǎng)頁的網(wǎng)址進行訪問Jupyter Notebook便會看到報錯頁面。

推薦閱讀

Jupyter Notebook 使用速查表


這個 Jupyter 插件,用起來就像 Excel 一樣簡單

瀏覽 32
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報
評論
圖片
表情
推薦
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 天天日天天日天天干| 久久久性爱视频| 第九色| 国产精品秘ThePorn| 久久免费成人| 高清无码视频在线观看| 亚洲艹逼| 国内成人AV| 91精品成人电影| 午夜无码福利视频| 91人妻一区二区| 天堂一区二区| 国产伦乱| 亚洲天堂欧美| 亚洲视频网站在线观看| 亚洲秘无码一区二区三区电影| 男女草逼视频| 久久黄色网络| 国产高清在线视频| 成人做爰黄AAA片免费直播岛国 | 国产成人精品无码片区在线观91| 国产一级内射| www.人人操| 四虎综合| 校园春色亚洲无码| 亚洲深夜福利| 日本绿色精品视频| 亚洲国产精品成人va在线观看 | av影片在线播放| 国产性生活视频| 狠狠色狠狠操| 国产黄色视频在线观看| 大肉大捧一进一出两腿| 五月天欧美性爱| 国产无码二区| 婷婷五月天性爱| 北岛玲丝袜办公室高跟| 麻豆传媒一区| 嫩BBB槡BBBB槡BBB小号| 国产美女自拍| 天天干天天日天天干| 黄色美女视频网站| 国产无遮挡A片又黄又爽小直播| 黄色三级电影| 欧美精品乱码99久久蜜桃| 中文字幕在线播放第一页| 成人a片在线免费观看| 久久大香蕉视频| 亚洲AV成人无码久久精品麻豆| 操逼网站在线观看| 亚色视频| 日本成人电影在线观看| 午夜久久视频| 大鸡吧操视频| 女人BBBB| 亚洲天堂在线观看视频网站| 中文字幕乱码视频32| 黄片免费视频| 最近中文字幕免费MV第一季歌词十| 日韩免费网站| 亚洲AV成人精品一区二区三区 | 亚洲欧美第一页| 成人色色| 美女被操网站免费| 黄色视频在线观看| 特级西西444www| 狠狠色狠狠操| 97人妻碰碰中文无码久热丝袜| 无码操逼| 亚洲有码中文字幕| 国产骚妇| 精品香蕉视频| 夜夜爽久久精品91| 91欧美视频| 青春草在线观看国产| 俺去俺来WWW色官方| 国产av黄| 欧一美一婬一伦一区二区三区黑人-亚 | 免费性网| 一区二区人妻| 日本黄色的视频| www.操操网| 亚洲无码成人| 久久九九99| 日韩无码中字| 婷婷综合| 97在线观看视频| 一区二区AV| 草逼片| 成人毛片18女人毛片| 91探花国产综合在线精品| 成人激情在线观看| 欧美成人午夜视频| 成人性爱在线| 日本精品无码a62v在线| 九色PORNY蝌蚪视频| 日操夜操| 欧美另类| av天堂中文在线| 中文字幕四区| 无码囯无精品毛片大码| 91网站免费在线观看| 国产精品无码av| 国产精品无码av| 亚洲欧洲成人| 日韩午夜成人电影| 成人激情在线观看| 免费黄色视频大全| 中文字幕性爱| 欧美午夜福利视频| 欧美黄色电影网站| 亚洲成人黄色| 波多野结衣一区二区三区| 久久亚洲视频| AV大香蕉| 美女黄色视频永费在线观看网站 | 操老骚逼视频| 色欲AV秘无码一区二区三区| 免费黄视频在线观看| 精品三级在线观看| 麻豆一级| 日韩无码操逼| 成人精品一区二区区别解析| 国产精品久久久久无码| 有码中文字幕在线观看| 青娱乐国产在线视频| 夜夜操网站| 永久免费看片视频| 做爱网| 97久久久| 欧美精产国品一二三| 国产一区二区精品| 日本久久久久久久久视频在线观看 | 久久精品视频在线| 涩婷婷| 精品乱伦| 久久久久国产一区二区三区四区 | 韩国午夜电影| 在线观看免费欧美操逼视频| 无码任你操| 人人操97| 久久99精品国产.久久久久久| 91成人小视频| 97国产精品人人爽人人做| 综合色网站| 久久久久逼| www.污| 黑人AV在线| 欧美性爱网址| 日韩av中文在线| 三级黄色小视频| 亚洲jiZZjiZZ日本少妇| 在线国产激情视频| 好男人WWW社区在线视频夜恋| www.人人摸| 99热在线观看免费精品| 操逼视频观看| 国产精品精品| 中文字幕免费在线| 黄网国产手机在线观看| 69视频在线免费观看| 青青草视频免费在线观看| 国精品无码A区一区二区| 另类老妇极品BBWBBw| 大香蕉在8线| 日韩精品一区二区三区黄冈站长 | 色婷婷亚洲精品天天综合| 91无码视频| 中文字幕在线观看一区二区三区| 色婷婷Av一区| 中文无码一区二区三区四区| ThePorn-成人网站入口| 日韩A∨视频| 精品69| 99婷婷| 伊人狼人香蕉| 老司机在线免费视频| 日本白嫩的BBw| 大鸡巴久久久久久久| 无码视频在线看| 91亚洲国产AⅤ精品一区二区| 欧美肏屄| 色婷婷视频在线观看| 看90后操B| 9l蝌蚪PORNY中文| 成人性爱视频免费观看| 大香蕉a片| 牛牛影视av老牛影视av| 五月天激情影院| 中文字幕免费高清| 久久激情国产| 黄色国产在线| 久久一二三四| 日韩黄色电影网址| 欧洲激情网| 国精久久久久| 友田真希一级婬片A片| 一区二区经典| 亚洲区成人777777精品| 青青草精品视频| 国产成人亚洲日韩| 亚洲精品乱码久久久久久蜜桃欧美 | 亚洲国产成人精品午夜| 蜜臀久久99精品久久| 狠狠色五月亚洲91| 操操操影院| 69AV在线观看| 开心色婷婷| 午夜精品一区二区三区在线成人| 亚洲天堂AB| 麻豆黄网| 国产精品福利在线播放| 欧美高清无码在线观看| 亚洲无码av在线播放| 黄片视频大全| 中文字幕成人av| 亚洲AV无码久久久| 久久久久久婷婷| 国产欧美精品一区二区| 天堂在线视频| 亚洲无码十八禁| 在线免费观看黄色视频网站| www.6969成人片亚洲| 特级西西444WWW大精品视频| 久艹久| 国产成人福利| 欧美日韩国产成人在线| 国产做受91一片二片老头| 亚洲欧洲无码在线| 麻豆网站91| 色色一区二区| 亚洲色图在线视频| 中文字幕免费久久| 九九99精品视频| 撒尿BBw搡BBwBBw| 97资源超碰| 欧美黄色大香蕉| 亚洲电影免费观看| 亚洲精品国偷拍自产在线观看蜜桃 | 欧美毛片在线观看| 婷婷五月综合网| 三级电影久久麻豆| 青青综合网| 91黄色在线观看| 特级西西西西4444级酉西88wwww特 | 四虎久久| 超碰自拍97| 一区二区三区观看| 一区二区三区四区无码视频| 三级片韩国AV| 成人精品一区日本无码网站suv/| 69婷婷国产精品| 国产A片免费看| 插菊花综合网亚洲| 老湿机福利院| 成人av天堂| 人人爱人人操| www.91在线看| 婷婷五月一区| 国产黄色免费看| 成人精品亚洲人成在线| 国产一a毛一a免费观看| 日韩免费无码| 亚洲欧美精品AAAAAA片| 日美女网站| 中文字幕国产精品| 激情麻豆论坛| 中文无码不卡| 天天干天天色天天日| 东京热在线观看| 超碰97成人| 国产亚洲精品码| 五月婷婷综合网| 一级a黄色片| 亚洲不卡中文字幕| 91中文字幕在线| 亚洲AV无码精品岛国| 国产精品视频99| 久久精品三级片| 裸体黄色一极大片| 色五月婷婷婷| 午夜一区二区三区| 日韩黄色视频在线观看| 久草麻豆| 五月激情网站| 思思热这里只有精品| 无码人妻精品一区二区蜜桃漫画| 翔田千里一区二区| 国产三级AV在线观看| 欧美成人福利在线观看| 国产在线视频你懂的| 亚洲无码在线观看免费| 成人做爰黄A片免费| 91成人免费电影| 在线成人小视频| 97AV在线| 久久yzy| 亚洲一区黄色| 九九国产| 北条麻妃无码视频| 国产污视频在线观看| 色婷婷一级A片AAA毛片| 日本成人午夜福利| 三级片亚洲无码| 中文字幕亞洲高清手機版第617| 天天摸天天肏| 亚洲成人视频在线免费观看| 青青草手机在线视频| 欧美日韩一级二级三级| 色综合综合色| 超碰老熟女| 超碰97老师| 免费观看av| 激情婷婷色五月| 黄色大片免费在线观看| 亚洲狠狠| 自拍偷拍激情视频| 操B视频在线观看| 亚洲AV片一区二区三区| 91黄色在线观看| 亚洲三级视频| 超碰福利导航| 四川少妇BBB| 欧美日韩一级黄片| 91丨PORNY丨丰满人妻网站| 青娱乐偷窥成| 午夜资源网| 婷婷色导航| 亚洲无码av网站| 男女无码视频| 无码999| 日韩精品一区二区三区中文在线 | 高清无码在线免费视频| 欧美日韩操逼视频| 五月天婷婷在线播放视频免费观看| 国产欧美在线视频| 国产高清秘成人久久| 在线播放www| 婷婷五月天社区| 亚洲高清福利视频| 免费高清无码在线观看| 人妻少妇精品视频一区二区三区| 久久婷婷亚洲| 黄片91| 视频一区18| 黄色大片久草| 麻豆激情视频| 91探花秘在线播放| 91麻豆福利| 欧美性爱一区| 免费在线看A| 日本精品视频在线观看| 欧美成人日韩| 亚洲操b| 亚洲国产精品成人综合色在线婷婷| 中文字幕+乱码+中文字幕在线| 精品孕妇一级A片免费看| 亚洲区欧美区| 最新中文字幕视频| 国产第56页| 欧美午夜精品久久久| 午夜神马影院| 人人舔视频| 狠狠色五月亚洲91| 精品乱子伦一区二区三区,亚洲国产成| 蜜桃av无码一区三区| 成人自拍偷拍| 中文字幕在线乱| 亚洲欧美久久| 亚洲AV成人无码一区二区三区| 毛片二区| 成熟的国模冰莲[2]| 免费黄片在线看| 精品中文在线| 婷婷丁香六月| 成人毛片18女人毛片真水| 欧美日本国产| 美日韩精品| 国产精品一二三| 中国熟女HD| 亚洲无码高清视频| 天天干天天日天天射| 欧美一二三区黄色免费视屏| 亚洲成人影音| 尤物A片| 91老熟女视频| 婷婷五月18永久免费视频| 69精品无码成人久久久久久| 老鸭窝久久久| 五月婷婷深深爱| 久久久久99精品成人片直播| 熟妇人妻中文字幕无码老熟妇| 五月天综合在线| 韩国午夜福利| 无码成人在线| 天美果冻麻豆国产一区| 人妻无码不卡| 午夜av在线播放| 你懂的在线网站| 乱伦91视频| 操一操影院| 青青草网站在线观看| 久操精品| 天天躁天干天干| 搞黄免费视频视频| 亚洲国产日本| 超碰在线最新| 成人午夜无码视频| 国产日韩欧美91| 无码电影网| 日本理论片一道本| 2025av中文字幕| 国产免费a片| www.777熟女人妻| 高清av在线| 人妻少妇偷人精品久久| 日韩视频在线免费观看| 中文字幕第9页| 国产操穴| 老熟女一区二区三区| 久久久精品淫秽色情| aaa黄片| 91人妻人人爽人人澡| 又a又黄高清无码视频| 国产夫妻在线视频| 操B视频在线免费观看| 国产黄在线观看| 国产aaaaaaaaaa| 就要操| WWW久久| 天天搞搞| 四虎精品影院| 91探花在线播放| 午夜成人福利视频在线观看| 欧美a√| 四虎最新地址| 中文字幕第4页| 18禁av在线| 久久久婷婷五月亚洲国产精品 | 亚洲天堂在线免费观看视频| 麻豆中文字幕| 欧美av| 黄色av免费看| 亚洲天堂无码在线观看| 欧美久久久久久久| 91蝌蚪久久| 怡红院一区| 精品素人在线| 91香蕉| 成人小视频18| 日日爱av| 超碰中文字幕| 先锋成人AV| 羞羞涩漫无码免费网站入口| 欧美精产国品一二三区| AV一区二区在线观看| 狠狠干老司机| 成人久久电影| 波多无码在线| 天天草B| 久久精品6| 日韩一级片在线播放| 日韩精品黄片| 国产无遮挡又黄又爽又色学生软件| 西西444WWW无码大胆知乎| 中文无码网站| 亚洲无码动漫| 国产在线视频91| 91嫩草久久久久久久| 国产高清在线视频| 国产精品免费人成人网站酒店| 一区二区国产视频| a在线视频| 日本久久综合| 天天夜夜久久| 日韩强操逼网| 亚洲精品一区二区三| 亚洲成人网站免费观看| 中文无码精品欧美日韩| 久久人爽| 综合色亚洲| 91精品国产综合久久久蜜臀图片| 内射少妇18| www.日本色| 波多野结衣福利视频| 黑人操逼| 怡红院一区| 青青草小视频| 成人性视频Aⅴ| 黄色片在线免费看| 最新国产精品| 亚州不卡| 黑人内射人妖| 一级a一级a爱片免费视频| 国产精品美女毛片j酒店| 西西人体大胆ww4444图片| 九色91| 特级艺体西西444WWw| 五月天综合久久| 激情AV在线观看| 日韩欧美成人在线| 51妺嘿嘿午夜福利在线| 美女十八禁| 日韩在线观看| 国产成人无码永久免费| 亚洲无码AV在线观看| 五月亭亭在线视频| 99亚洲精品| 欧美精品人妻| 日本中文无码视频| 五月天AV网站| 国产乱子伦日B视频| 99热免费观看| 丁香网五月天| 天堂中文在线a| 色婷婷AV| 秋霞一区| 码人妻免费视频| 三级AV在线观看| 亚洲免费精品视频| 成人片网址| 亚洲无码123| 亲子伦一区二区三区观看方式| www91久久| 91精品人妻一区二区三区蜜桃| 亚洲高清无码在线视频| 97久久精品| 天堂视频中文在线| 亚洲欧洲在线观看| 中文字幕在线不卡| www.俺去| 亚洲欧美在线视频观看| 伊人丁香| 久久久久久国产| 免费无码国产| 精品AV无码| jizz国产视频| 波多野结衣av在线观看窜天猴 | 韩国三级HD久久精品| 日韩欧美偷拍| 国产黄h| 99色视频| 18禁网站免费| aaaaaa在线观看免费高清| 亚洲国产高清国产精品| 久久人妻免费视频| 大地影院在线资源观看| 狠狠操狠狠操狠狠操| 日韩十八禁网站| 国产尤物在线观看| 中文字幕韩日| 婷婷综合| 国产成人A| 国产无码二区| 三级黄片网站| 亚洲AV永久无码精品国产精| AV天堂国产| 成人h在线| 日韩免费三级片| 六月婷婷中文字幕| 婷婷五月天啪啪| 16一17女人毛片| 北条麻妃99精彩视频| 人妻无码免费视频| 亚洲天堂色| 色视频在线观看免费| 婷婷丁香色| 日韩乱码| 國模久久| 国产性爱网| 香蕉久久a毛片| 婷婷五月AV| 西西特级WWW444无码| 欧美日韩一区二区在线| 色色网站视频| 中国乱伦视频| 久久一区二区三区四区| 九九这里有精品| 精品在线第一页| 91福利视频在线观看| 伊人逼逼| 91就去干| 性满足BBwBBWBBw| 日韩人妻无码一区二区三区七区| 内射免费视频| 欧美肏屄| 亚洲电影av| 亚洲天堂精品视频| 亚洲成人无码精品| 三级成人免费| 国产精品男女| 五月天无码av| 男人天堂手机视频| 大香蕉精品在线| 少妇福利| 欧美日韩一区在线| 老湿机福利视频| 中文字幕手机在线视频| 韩国成人无码| 蜜臂AV| 欧美性生活视频| 免费黄片无码| 国产日韩欧美综合精品在线观看| 国产成人久久777777黄蓉| 女人的天堂av| 四川乱子伦95视频国产| 91av免费| 黄片无码免费| 真人BBwBBWBBw另类视频| 国产亚洲无码激情前后夹击| 人人人干| 日韩一级中文字幕| 免费在线观看中文字幕| 91在线视频观看| 成人精品在线观看| 西西人体WW大胆无码| 国产高清一区二区| 国产精品成人99一区无码| 嫩草视频网站| 国产高清A片| 大香蕉在线网站| 蜜桃传媒在线播放| 最近最火中文字幕mv歌词| 黄页网站视频| 久久日韩无码| 久久久久久一| 日本少妇黄色视频| 蜜桃一区二区中午字幕| 国产激情综合五月久久| 黄色三级视频在线观看| 成人免费视频18| 欧美日韩成人在线视频| 亚洲精品无码电影| 古装一级无遮挡A片| 国产精品操| 天堂久草| 亚洲精品久久久蜜桃| 男人的天堂色婷婷| 亚洲免费观看高清完整版在线观| 91无码人妻一区二区成人aⅴ| 一级片黄片| 免费高清无码| 欧美高清另类| 六月综合网| 免费三级怡红院| 一级真人毛片| 十八无码成人免费网站| 亚洲av资源在线观看| 霸道总裁雷总各种姿势白浆爱情岛论坛 | 翔田千里无码播放| 精品人妻一区二区免费蜜桃| 91久久超碰| 人妻HDHDHD96XXXX| 久久超碰99| 一边做一边说国语对白| 在线国产激情视频| 日韩无码福利| 蜜臀精品色无码蜜臀AV| 免费无码国产| 黄色视频免费观看国产| 五月天综合久久| 欧美成人免费观看| 美女91小视频| 国产A级毛片久久久久久| 99欧美精品| 日本一级黄| 日韩免费成人视频| 99久热在线精品| 欧美成人三级在线播放| 色欧美视频| 无码免费在线观看视频| japanese在线观看| 国产精品日韩高清北条麻衣| 久草久热| 国产又大又粗又黄| 青青草在线免费视频| 在线视频一区二区三区四区| 欧美日韩亚洲视频| 韩国中文无码| 加勒比无码在线播放| 男人天堂色| 国产综合久久久7777777| 久操人妻| 亚洲免费视频播放| 麻豆人妻换人妻好紧| 亚洲成人在线网站| 国产在线第一页| 91日韩| 操逼大片| 91夫妻交友视频| 精品久久免费| 亚洲视频二| 亚洲天堂在线观看视频网站| 黄页网站视频| 在线观看中文字幕一区| 米奇狠狠干| 婷婷伊人中文字幕| 性九九九九九九| 欧美深夜福利| 亚洲三级片在线| 天天操天天插| 精品天堂| 天天干天天草| 日逼黄片| 色999网址| 国产免费乱伦| 久操手机在线| 国产女人水真多18毛片18精品| 欧美色图在线观看视频| 色视频免费在线观看| 五月黄色电影| 成人免费激情视频| 九九激情| 国产成人无码永久免费| 51成人网| 蜜桃一区二区三区| 天天操天天操免费视频| 麻豆一区视频| 欧美操大逼| www日韩欧美| 国产八区| 天天日天天操天天摸天天干天日射天天插| 日韩天堂网| 99国产精品免费视频观看8| 国产成人精品一区二区三区| 免费A级毛片在线播放不收费| 日韩在线视频观看| 美妇肥臀一区二区三区-久久99精品国| 免费V片在线观看| 色色色免费视频| 中国美女一级黄片| 99热综合在线| 久久99人妻无码精品一区| 99超碰在线观看| 五月婷婷在线视频| 国产一级在线观看| A级毛片网站| gogogo免费高清在线偷拍| 51伦理| 97国产精品久久| 婷婷五月精品| 91网站免费| 久久99精品视频| 中文字幕亚洲在线| 一区二区Av| 亚洲国产高清国产精品| 97视频精品| 久久一区二区三区四区五区| 亚洲乱伦中文字幕| 欧美成人精品一区二区三区| 成人伊人网| 国产乱伦片、| 亚洲欧美日韩在线| 黄色无码在线观看| 日韩欧美一级视频| 日韩高清av| www.大鸡巴| 99电影网手机在线观看| 人人摸人人操人人爽| 亚洲欧美在线视频免费| 日韩成人三级片| 欧美亚洲一区二区三区| 骚逼av| 免费一级A片| 欧美性爱XXXX| 一区二区三区四区成人| 91看片看婬黄大片女跟女| 亚洲一区二区在线视频| 欧美视频免费在线观看| 国产欧美一区二区| 日日操天天操夜夜操| 高清无码网站在线观看| 日中文字幕| 欧美黄片免费在线观看| 99在线观看免费视频| 色悠悠久久| 中文字幕精品综合| 色五月网站| 五月丁香狠狠爱| 亚洲黄色录像| 波多野结衣毛片| 嫖中国站街老熟女HD| 国产精品在线看| 无码人妻丰满熟妇区蜜桃| 亚洲日韩影院| 中文字幕有码在线| 人人爱人人插高清| 香蕉福利网| 熟妇人妻中文| 欧美日韩成人视频| 日韩免费在线| 人人操人人干人人| 国产精品久久久大香蕉| 亚洲精品视频免费看| 免费毛片+一区二区三区| 91人人操| 精品成人Av一区二区三区| 天天色色天天| 欧美肉大捧一进一出小说| 亚洲va国产va天堂va久久| 午夜性爽视频男人的天堂| 欧美va视频| 国产99久久久| 欧美一区二区三曲的| 丁香六月婷婷综合| 俺也去俺也来| 天堂色综合| 丰满人妻一区二区| 久久成人精品| 色婷婷91| 女人av天堂| 日韩精品综合| 成人午夜免费视频| 人妻少妇被猛烈进入中文字幕 | 青草免费视频| 亚洲国产成人精品激情在线| 无码免费在线观看视频| 色色777| 涩婷婷| 国产成人A∨| 欧美日韩一区二区三区四区 | 国产一区二区三区四区五区六区七区| 男女啪啪国产| 久操视频在线免费观看| 久久精品网| 亚洲欧洲精品成人久久曰影片| 久久久青草| 国产久久久久久久| 九九精品12| 欧美性爱A片| 中文字幕高清无码视频| 大香蕉伊人在线观看| 伊人综合久久| www.199麻豆在线观看网站 | 色婷婷综合网| 久草大香蕉在线视频| 一级a性色毛片| 欧一美一婬一伦一区二区三区黑人 | 国产成人小视频在线观看| 国产精品毛片视频| 日本特级片| 殴殴美日韩在线| 亚洲字幕AV| 国产一级A| 在线视频91| 丁香伊人| www.五月天| 欧美sese| 中文字幕乱码视频32| 亚洲专区区免费| 一二区视频| 骚白虎一区| 国产精品V日韩精品V在线观看| 成人啪啪网站| 日韩一级片在线观看| 思思热在线视频精品| AV资源网站| 國產精品77777777777| 97色在线视频| 久久公开视频| 成年人网站在线免费观看| 97热| 成人在线三级片| 久久精品视频免费观看| 成人无码视频在线| 国产剧情一区二区三区| 成人网站免费在线观看| 在线中文字幕在线观看| 亚洲人成人无码.www粉色| 中日韩无码| 国产人妻一区二区三区欧美毛片| AV天堂中文字幕| 水密桃网站| 精品國產一區二區三區久久蜜月| 日韩一区二区三区免费视频 | 麻豆亚洲AV成人无码久久精品| 日韩免费| 久久av一区二区三区观看| 亚洲AV无码成人精品区大猫| 亚洲成人中文字幕| 午夜试看120秒体验区的特点| 日韩高清无码专区| 土耳其电影《爱与罚》| 久久大香蕉91| AV免费播放| 天天玩夜夜玩天天玩国产99| 大鸡巴久久久久久久| 91精品国产综合久久久蜜臀九色| av色站| 亚洲AV无码精品国产| 国产又爽又黄免费网站校园里| 亚洲欧美久久久久久久久久久久| 欧美一级AA大片免费看视频| 亚洲天堂偷拍| 夜夜操天天| 毛片在线观看视频| 亚洲一本在线电影av| 五月丁香婷婷啪啪| 青草青草| 国产精品国产三级片|