精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
史上最詳細(xì)、最完全的jupyter notebook使用教程,Python使用者必備!——ipyth...

一、什么是jupyter

1、簡介:

jupyter notebook是一種 Web 應(yīng)用,能讓用戶將說明文本、數(shù)學(xué)方程、代碼和可視化內(nèi)容全部組合到一個易于共享的文檔中。它可以直接在代碼旁寫出敘述性文檔,而不是另外編寫單獨的文檔。也就是它可以能將代碼、文檔等這一切集中到一處,讓用戶一目了然。

Jupyter這個名字是它要服務(wù)的三種語言的縮寫:Julia,PYThon和R,這個名字與“木星(jupiter)”諧音。Jupyter Notebook 已迅速成為數(shù)據(jù)分析,機器學(xué)習(xí)的必備工具。因為它可以讓數(shù)據(jù)分析師集中精力向用戶解釋整個分析過程。我們可以通過Jupyter notebook寫出了我們的學(xué)習(xí)筆記。但是jupyter遠(yuǎn)遠(yuǎn)不止支持上面的三種語言,目前能夠使用的語言他基本上都能支持,包括C、C++、C#,java、Go等等。

jupyter notebook和我們前面所講的兩篇系列文章ipython其實都是來自同一個產(chǎn)品族,它的前身叫做ipython notebook,至于后面為什么更名這不得而知,這也就是為什么很多文章總是默認(rèn)將ipython就說成是ipython notebook的原因了。但是既然已經(jīng)更名了,我們還是區(qū)別對待ipython和jupyter notebook。

2、安裝與打開

安裝這里就不說了,使用過anaconda的人都清楚,在安裝anaconda的時候會一起打包安裝,如果想要自己安裝,可以通過pip或者是conda安裝,

怎么打開也很簡單,可以直接在anaconda的菜單里面打開jupyter notebook,也可以通過命令行,輸入jupyter notebook或者是jupyter-notebook都可以。

我們說了,jupyter notebook會在瀏覽器中中打開,是一種Web應(yīng)用,故而有web路徑和端口號了,我的打開之后,在瀏覽器的地址欄會顯示如下:

http://localhost:8888/tree

當(dāng)一次打開多個jupyter notebook的時候,端口號會依次遞增8889,8890依次遞增。

3、jupyter的作用

前面說了一大堆,也不清楚jupyter到底有啥好的啊,到底有一些什么功能呢?

在介紹 Jupyter Notebook 的功能之前,讓我們先來看一個概念:文學(xué)編程 ( Literate programming ),這是由 Donald Knuth 提出的編程方法。傳統(tǒng)的結(jié)構(gòu)化編程,人們需要按計算機的邏輯順序來編寫代碼;與此相反,文學(xué)編程則可以讓人們按照自己的思維邏輯來開發(fā)程序。

簡單來說,文學(xué)編程的讀者不是機器,而是人。 我們從寫出讓機器讀懂的代碼,過渡到向人們解說如何讓機器實現(xiàn)我們的想法,其中除了代碼,更多的是敘述性的文字、圖表等內(nèi)容。這么一看,這不正是數(shù)據(jù)分析人員所需要的編碼風(fēng)格么?不僅要當(dāng)好一個程序員,還得當(dāng)好一個作家。那么 Jupyter Notebook 就是不可或缺的一款集編程和寫作于一體的效率工具。

以下列舉了 Jupyter Notebook 的眾多優(yōu)點:

(1)極其適合數(shù)據(jù)分析,想象一下如下混亂的場景:你在終端中運行程序,可視化結(jié)果卻顯示在另一個窗口中,包含函數(shù)和類的腳本存在其他文檔中,更可惡的是你還需另外寫一份說明文檔來解釋程序如何執(zhí)行以及結(jié)果如何。此時 Jupyter Notebook 從天而降,將所有內(nèi)容收歸一處,你是不是頓覺靈臺清明,思路更加清晰了呢?

(2)支持多語言,也許你習(xí)慣使用 R 語言來做數(shù)據(jù)分析,或者是想用學(xué)術(shù)界常用的 MATLAB 和 Mathematica,這些都不成問題,只要安裝相對應(yīng)的核(kernel)即可。這里列出了 Jupyter 支持的所有語言,供您參考。

分享便捷,支持以網(wǎng)頁的形式分享,GitHub 中天然支持 Notebook 展示,也可以通過 nbviewer 分享你的文檔。當(dāng)然也支持導(dǎo)出成 HTML、Markdown 、PDF 等多種格式的文檔。

(3)遠(yuǎn)程運行,在任何地點都可以通過網(wǎng)絡(luò)鏈接遠(yuǎn)程服務(wù)器來實現(xiàn)運算

(4)交互式展現(xiàn),不僅可以輸出圖片、視頻、數(shù)學(xué)公式,甚至可以呈現(xiàn)一些互動的可視化內(nèi)容,比如可以縮放的地圖或者是可以旋轉(zhuǎn)的三維模型。這就需要交互式插件(Interactive widgets)來支持,更多內(nèi)容請參考這里。

常見的一些jupyter高級應(yīng)用如:

數(shù)學(xué)公式編輯

幻燈片制作

魔術(shù)關(guān)鍵字

二、jupyter notebook的簡單使用

1、常用的jupyter notebook一些命令如下:指的是在cmd中使用jupyter命令

(1)查看jupyter notebook的相關(guān)幫助

jupyter-notebook --help

jupyter-notebook --help-all (會顯示更詳細(xì)的信息)

jupyter-notebook -h (只有一個橫杠噢,熟悉命令使用的小伙伴都知道)

(2)jupyter notebook常用的子命令——subcommand

list :列出當(dāng)前的所打開的jupyter notebook的一些信息,比如:(base) C:\Users\lenovo>jupyter-notebook listCurrently running servers:http://localhost:8888/?token=5751bd2f4a5675c59c15c9cdfaa7ecbe431ba68b7d23a3c7 :: C:\Users\lenovohttp://localhost:8889/?token=a9f1a6a33a5b0fa93f51552aecbb99a3dec321fdd5e0e74a :: C:\Users\lenovo

這里我打開了兩個jupyter notebook,一個端口為8888,一個為8889

stop:關(guān)閉所給定的端口號的那一個jupyter(base) C:\Users\lenovo>jupyter-notebook stop 8888Shutting down server on port 8888 ...(base) C:\Users\lenovo>jupyter notebook listCurrently running servers:http://localhost:8889/?token=a9f1a6a33a5b0fa93f51552aecbb99a3dec321fdd5e0e74a :: C:\Users\lenovo

關(guān)閉了8888,只剩下一個8889了。

password :給某一個打開的jupyter notebook 服務(wù)設(shè)置密碼,后面直接輸入所要添加的密碼即可。

(3)jupyter notebook命令的常用選項,下面進(jìn)介紹一些常用的,想要知道所有的詳細(xì)使用可以使用

jupyter notebook --help-all 查看jupyter命令的詳細(xì)信息:

--generate-config  產(chǎn)生默認(rèn)的配置文件()這個是重點,后面會講到)

--no-browser 啟動jupyter notebook之后不打開瀏覽器(默認(rèn)情況下是會打開一個瀏覽器界面的)

--pylab 同前面講解ipython的時候很類似,在jupyter notebook里面集成,也可以在jupyter notebook里面使用

%pylab 或者是%matplotlib魔術(shù)命令(這是最常用的,后面也會講到)

--config=  制定一個完全路徑的配置文件名稱,關(guān)于配置文件后面會詳解,默認(rèn)是default,即系統(tǒng)指定的默認(rèn)配置文件

--ip=  默認(rèn)是: 'localhost',從前面的現(xiàn)實中也可以看出來,表示的是notebook服務(wù)器會監(jiān)聽的IP地址,我們也可以手動指定

--port=  指定jupyter notebook打開瀏覽器的端口號,默認(rèn)是: 8888,也可以手動輸入

--notebook-dir=默認(rèn)使用默認(rèn)的目錄,表示的是notebook和kernels的目錄

--browser=還可以指定某一個特定的瀏覽器打開,默認(rèn)使用系統(tǒng)默認(rèn)的瀏覽器打開,是可以自己選定瀏覽器的。

2、jupyter的簡單使用

當(dāng)我們打開jupyter notebook(不管用什么樣的方式打開,使用菜單打開或者是命令行打開是一樣的)會在默認(rèn)的瀏覽器中看到這樣的界面:

但是每一臺不同的電腦打開之后的界面是不同的,仔細(xì)觀察就會發(fā)現(xiàn),這里面現(xiàn)實的一些文件夾就是電腦用戶目錄下面的文件夾,這是為什么呢?那是因為jupyter notebook在啟動的時候總是有一個默認(rèn)的目錄,一般情況下,使用戶的目錄。

那怎么查看默認(rèn)目錄,或者是我想要修改默認(rèn)目錄該怎么做呢?

實際上,jupyter的一些默認(rèn)設(shè)置都設(shè)置在一個默認(rèn)的配置文件中,我們可以查看并且修改配置文件中的內(nèi)容

(1)查看配置文件

在cmd中使用如下命令:jupyter-notebook --generate-config(base) C:\Users\lenovo>jupyter-notebook --generate-configWriting default config to: C:\Users\lenovo\.jupyter\jupyter_notebook_config.py

可見我的默認(rèn)配置文件在:C:\Users\lenovo\.jupyter\jupyter_notebook_config.py中,現(xiàn)在我們查看配置文件的信息。得到如下:

打開之后發(fā)現(xiàn),這本質(zhì)上應(yīng)該是一個python的 py文件,但是實際上全部都是用井號#開頭的,這不是意味著這都是一些注釋嗎?可以這么說,但實際上觀察會發(fā)現(xiàn),有的有兩個井號開頭 ##,這才是注釋文本,而那些以一個井號#開頭的實際上就是默認(rèn)的配置信息,也就是我們要修改的。當(dāng)然這個文件很長,我不會一個一個講解每一個配置信息是什么意思,我指將如何自定義默認(rèn)目錄。

我們通過編輯器,搜索directory定位到如下位置:## The directory to use for notebooks and kernels.#c.NotebookApp.notebook_dir = ''

這句話就是設(shè)置jupyter的目錄的,可見默認(rèn)值是沒有的,我們現(xiàn)在比如要使它指定到我們自己的目錄,比如我要讓它指定到F盤中的myjupyter文件夾,則修改如下:## The directory to use for notebooks and kernels.c.NotebookApp.notebook_dir = 'F:\myjupyter'

保存修改的文件并關(guān)閉!然后再打開,發(fā)現(xiàn)如下信息,從下面的信息可以看見這樣一句話:

Serving notebooks from local directory: F:\myjupyter  

這就說明修改成功。 (base) C:\Users\lenovo>jupyter-notebook[I 14:17:57.432 NotebookApp] JupyterLab beta preview extension loaded from D:\ProgramData\Anaconda3\lib\site-packages\jupyterlab[I 14:17:57.432 NotebookApp] JupyterLab application directory is D:\ProgramData\Anaconda3\share\jupyter\lab[I 14:18:00.231 NotebookApp] Serving notebooks from local directory: F:\myjupyter[I 14:18:00.232 NotebookApp] 0 active kernels[I 14:18:00.232 NotebookApp] The Jupyter Notebook is running at:[I 14:18:00.232 NotebookApp] http://localhost:8888/?token=ad2aa0097b0687bbd8b5b11909101533630e781e7c28753b[I 14:18:00.232 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).[C 14:18:00.234 NotebookApp]    Copy/paste this URL into your browser when you connect for the first time,    to login with a token:        http://localhost:8888/?token=ad2aa0097b0687bbd8b5b11909101533630e781e7c28753b&token=ad2aa0097b0687bbd8b5b11909101533630e781e7c28753b[I 14:18:00.786 NotebookApp] Accepting one-time-token-authenticated connection from ::1

注意事項:

第一、文件夾必須先創(chuàng)建好,比如這里F盤下面的myjupyter文件夾要先創(chuàng)建好;不然會jupyter初始化時會找不到目錄

第二、要取消注釋,c前面的#要去掉(我還不知道這是為什么?哪位知道望告知!)

第三、要注意文件名不可以是數(shù)字

除此之外,上面的這些操作,推薦全部使用anaconda自帶的Anaconda Promp進(jìn)行操作,因為它提供了非常好的環(huán)境管理功能,而在系統(tǒng)自身的cmd中操作,可能因為環(huán)境變量設(shè)置等相關(guān)的一些原因,不成功。比如我在多個環(huán)境中都安裝了jupyter,但是cmd中環(huán)境變量所指向的那個是A,我們修改的可能是B的配置文件,這樣通過cmd啟動jupyter發(fā)現(xiàn)依然未改變。

現(xiàn)在打開,則發(fā)現(xiàn)web界面變成了如下:

三、jupyter運行環(huán)境的配置——一python運行環(huán)境為例

jupyter notebook本質(zhì)上是一個web應(yīng)用程序,我們可以在上面書寫代碼,但是代碼本身的運行環(huán)境是需要自己安裝的,沒有運行環(huán)境,即使是在jupyter notebook里面書寫的代碼怡然沒有辦法運行。因為代碼本身,web應(yīng)用程序是不認(rèn)識的。

幸運的是,在使用anaconda安裝的時候,會默認(rèn)將安裝jupyter,而且會安裝一個Python的運行環(huán)境,所以打開jupyter的時候,可以直接看見這個運行環(huán)境,在jupyter里面稱之為內(nèi)核kernel,如下所示:

在右上角點擊下拉按鈕,會得到如圖所示的結(jié)果,

第一個python3 ,表示的就是默認(rèn)的python3 kernel,它是隨著anaconda一起安裝的;

Text File ,表示的是新建一個文本文件

Folder ,表示的是新建一個文件夾

Terminal ,表示的是在瀏覽器中新建一個用戶終端,即類似于cmd的shell。

但是,這是遠(yuǎn)遠(yuǎn)不夠的,因為我不可能所有的程序都是使用這一個python kernel,使用過TensorFlow的人都知道如何創(chuàng)建一個新的運行環(huán)境,打包TensorFlow所依賴的各種包。本文以python為例,我還有另外兩個環(huán)境,一個是TensorFlow,一個是pytorch,還有一個是,mxnet。他們都是使用conda創(chuàng)建的python運行環(huán)境。其實就一句話:

conda create -n tensorflow python=3.6

conda創(chuàng)建運行環(huán)境的方法這里就不詳細(xì)說明了,可以參閱相關(guān)文章。注意:因為anaconda的服務(wù)器在國外,上面的執(zhí)行速度實在是太慢,甚至等了半天,然后連接失敗,所以,我們可以使用清華大學(xué)的鏡像進(jìn)行下載,在使用上面執(zhí)行命令之前,添加一句:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

再使用:conda create -n tensorflow python=3.6

這會快非常多!!!

注意:

TUNA 還提供了 Anaconda 倉庫的鏡像,運行以下命令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

conda config --set show_channel_urls yes

即可添加 Anaconda Python 免費倉庫。

直接粘貼復(fù)制以上代碼即可。另外,要一行一行運行,并且每一行運行完沒有任何結(jié)果,直接運行下一行即可。

三行代碼運行完,可以運行 conda install numpy 測試一下吧。

1、原始的方法解決多個Python運行環(huán)境問題

就是走在每一個python的運行環(huán)境里面都使用conda install notebook 安裝一個與之對應(yīng)的notebook,然后我在做開發(fā)的時候,需要用什么環(huán)境,我就在每一個Python環(huán)境中的script文件夾下面打開對應(yīng)的哪個jupyter notebook,這當(dāng)然沒問題。但這樣做不是很高級,我需要安裝很多次,而且每次在使用jupyter notebook的時候都只能使用一個環(huán)境,局限性很大。

2、更高級的辦法

現(xiàn)在,比如我已經(jīng)在anaconda里面創(chuàng)建了一個名為tensorflow的環(huán)境,但是,怎么把它添加到j(luò)upyter里面呢?

(1)方法一:

首先在anaconda prompt里面激活我們需要的環(huán)境,然后執(zhí)行下面一個命令:

(base) C:\Users\lenovo>activate python27

(python27) C:\Users\lenovo>python -m ipykernel install --name python27

Installed kernelspec python27 in C:\ProgramData\jupyter\kernels\python27

(base) C:\Users\lenovo>activate tensorflow

(tensorflow) C:\Users\lenovo>python -m ipykernel install --name tensorflow

Installed kernelspec tensorflow in C:\ProgramData\jupyter\kernels\tensorflow

總結(jié):兩步走,

第一步:激活相應(yīng)的環(huán)境

第二部分:執(zhí)行命令 python -m ipykernel install --name 環(huán)境名稱

現(xiàn)在打開我們的jupyter notebook,查看python環(huán)境如下:

補充:也有人用下面的方法:

先激活某一個Python環(huán)境:然后再執(zhí)行下面兩個語句:

conda install -n 環(huán)境名稱 ipykernel

python -m ipykernel install --user  

注意:上面這種方式都是可以的,但問題是還是需要針對每一個環(huán)境安裝一次ipykernel,而且有時候不知怎么回事,總是會遇見一些亂七八糟的錯誤,我還沒搞清楚是為什么,如果誰知道,望告知。

(2) 方法二——一步到位的方法

在我創(chuàng)建完我需要的運行環(huán)境之后,然后只需要在base運行環(huán)境中執(zhí)行一個命令即可。

(base) C:\Users\lenovo>conda install nb_conda

將會將所有的kernel全部添加進(jìn)去,這種方法是最快的,而且最不容易出錯,推薦使用。

(3)補充方法——綜合前面兩者

(1)一步到位:

(base) C:\Users\lenovo>conda install nb_conda

(base) C:\Users\lenovo>conda install nb_conda_kernels

兩種方法均可以

(2)分步完成:

第一步:激活某一個環(huán)境activate mxnet

第二步:在環(huán)境中安裝ipykernel:pip install ipykernel

第三步:再執(zhí)行命令:

python -m ipykernel install --user --name mxnet --display-name mymxnet

后面的藍(lán)色部分可以省略。第一個mxnet指的是我激活的那一個環(huán)境名,這里是mxnet;第二個mymxnet是我要在jupyter里面顯示的內(nèi)核名稱,是自己自定義的,我定義為mymxnet。

全文總結(jié):關(guān)于ipython系列的文章到這里就結(jié)束了,三篇文章,從ipython到j(luò)upyter notebook,希望對于一些有需要的小伙伴有所幫助,本來還打算寫一篇關(guān)于jupyter notebook的使用的,但是這種教程網(wǎng)上實在太多了,就不在這里畫蛇添足了。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
anaconda的安裝使用
linux下安裝Anaconda以及配置jupyter的遠(yuǎn)程訪問
Win10 Anaconda中安裝Tensorflow并配置到j(luò)upter kernel
如何在Jupyter Notebook中使用Python虛擬環(huán)境?
亞馬遜云教程4:安裝Anaconda,多python環(huán)境,運行jupyter notebook
手把手教你如何在阿里云ECS搭建Python TensorFlow Jupyter
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服

主站蜘蛛池模板: 三台县| 万山特区| 上杭县| 江陵县| 汶上县| 昌乐县| 精河县| 鹤壁市| 巴彦淖尔市| 铜梁县| 苗栗市| 新昌县| 临清市| 神农架林区| 寿光市| 资阳市| 晴隆县| 阳高县| 渭源县| 玉林市| 宜川县| 青冈县| 桂东县| 礼泉县| 绥江县| 扎赉特旗| 瓦房店市| 昌都县| 景谷| 海丰县| 南乐县| 湘乡市| 南丰县| 麟游县| 蒲城县| 信宜市| 当雄县| 桂平市| 静海县| 镇雄县| 堆龙德庆县|