-
1 # 技術宅的視覺便利店
-
2 # 城管哎
017年程式語言排行榜已新鮮出爐,毫無疑問,JAVA、C以及C++語言名列前三,排名第四的當屬當下最火爆的Python語言。Python的火爆源自於市場的需求和語言的本身特性,在國外市場Python很早就開始使用,並得到了廣泛的應用,如我們熟知的Google、Facebook等,而國內市場對於Python的應用相對滯後,近年來才開始使用,隨著人工智慧、雲計算、大資料、自動運維以及爬蟲技術的日益成熟,對Python語言全棧開發人才的需求激增,而市場上相關人才缺乏,因此,引起了一波Python學習潮!Python並非一門複雜的語言,而是一門簡單易學的語言,被設計得非常容易讀和寫,即使是非IT從業者,也可以透過很短時間的學習而掌握其使用的方法,實現強大的功能。Python語言對於想轉行從事IT領域工作的人來說是一個很好的選擇,簡單易學,市場需求量大,在未來幾年發展前景還是很不錯的!
-
3 # 產品喵
正常啦,在沒有jupyter notebook之前,在普通的 Python shell 或者在IDE(整合開發環境)如Pycharm中寫程式碼,然後在word中寫文件來說明你的專案。
這個路徑很長,通常是寫完程式碼,再寫文件的時候我還得重頭回顧一遍程式碼。最蛋疼的地方在於,有些資料分析的中間結果,我還的重新跑程式碼,然後把結果弄到文件裡給客戶看。
有了notebook之後,我的世界突然美好了許多,因為notebook 可以直接在程式碼旁寫出敘述性文件,而不是另外編寫單獨的文件。也就是它可以能將程式碼、文件等這一切集中到一處,讓使用者一目瞭然,有很好的互動性,實時的展示資料結果。
若是Python基礎練習,還是用pycharm這類的哦,目前jupyter主要用在資料清理和變換,數值模擬,統計建模,資料視覺化,機器學習等等。
-
4 # hua芬蘭教育
我也是python初學者,因為線上課程老師在jupyter設計課程,所以就用jupyter,開始的時候,不習慣,後來用的多了,好了一些。關鍵幾個功能開始要熟悉,比如執行cell
-
5 # 慎談奧秘
致Python初學者:你必須會的Jupyter Notebook
轉自:Python網路爬蟲與資料探勘
在資料分析的道路上,你一定曾有過為新發現而激動不已的時刻,此時你急於將自己的發現告訴大家,卻遇到了這樣的問題:如何將我的分析過程清晰地表述出來呢?
為了能與同行們有效溝通,你需要重現整個分析過程,並將說明文字、程式碼、圖表、公式、結論都整合在一個文件中。顯然傳統的文字編輯工具並不能滿足這一需求,所以這兒隆重推薦一款神器 Jupyter Notebook,不僅能在文件中執行程式碼,還能以網頁形式分享。
下圖簡單展示了Jupyter Notebook 文件的樣式,更多示例可在 nbviewer 中找到。
Jupyter Notebook 文件示例
本文將按如下內容來展開:
一、Jupyter Notebook 介紹
文學程式設計
歷史傳承
優點
二、Jupyter Notebook 使用入門
安裝
執行
介面
三、Jupyter Notebook 進階功能
數學公式編輯
幻燈片製作
魔術關鍵字
一、Jupyter Notebook 介紹文學程式設計
在介紹 Jupyter Notebook 之前,讓我們先來看一個概念:文學程式設計 ( Literate programming ),這是由 Donald Knuth 提出的程式設計方法。傳統的結構化程式設計,人們需要按計算機的邏輯順序來編寫程式碼;與此相反,文學程式設計則可以讓人們按照自己的思維邏輯來開發程式。
簡單來說,文學程式設計的讀者不是機器,而是人。 我們從寫出讓機器讀懂的程式碼,過渡到向人們解說如何讓機器實現我們的想法,其中除了程式碼,更多的是敘述性的文字、圖表等內容。這麼一看,這不正是資料分析人員所需要的編碼風格麼?不僅要當好一個程式設計師,還得當好一個作家。那麼 Jupyter Notebook 就是不可或缺的一款集程式設計和寫作於一體的效率工具。
歷史傳承
也許說到 Jupyter 你會覺得陌生,但想必你或多或少聽過鼎鼎大名的 IPython。其實Jupyter 脫胎於 IPython 專案,IPython 顧名思義,是專注於 Python 的專案,但隨著專案發展壯大,已經不僅僅侷限於 Python 這一種程式語言了。Jupyter 的名字就很好地釋義了這一發展過程,它是 Julia、Python 以及 R 語言的組合,字形相近於木星(Jupiter),而且現在支援的語言也遠超這三種了。
優點
以下列舉了 Jupyter Notebook 的眾多優點:
極其適合資料分析,想象一下如下混亂的場景:你在終端中執行程式,視覺化結果卻顯示在另一個視窗中,包含函式和類的指令碼存在其他文件中,更可惡的是你還需另外寫一份說明文件來解釋程式如何執行以及結果如何。此時 Jupyter Notebook 從天而降,將所有內容收歸一處,你是不是頓覺靈臺清明,思路更加清晰了呢?
支援多語言,也許你習慣使用 R 語言來做資料分析,或者是想用學術界常用的 MATLAB 和 Mathematica,這些都不成問題,只要安裝相對應的核(kernel)即可。這裡列出了 Jupyter 支援的所有語言,供您參考。
分享便捷,支援以網頁的形式分享,GitHub 中天然支援 Notebook 展示,也可以透過 nbviewer 分享你的文件。當然也支援匯出成 HTML、Markdown 、PDF 等多種格式的文件。
遠端執行,在任何地點都可以透過網路連結遠端伺服器來實現運算,這裡給出一個遠端執行的例子,可以體驗一下 Jupyter Notebook。
互動式展現,不僅可以輸出圖片、影片、數學公式,甚至可以呈現一些互動的視覺化內容,比如可以縮放的地圖或者是可以旋轉的三維模型。這就需要互動式外掛(Interactive widgets)來支援,更多內容請參考這裡。
二、Jupyter Notebook 使用入門安裝
對於初學者,最簡單的方法是安裝 Anaconda,因為它自帶了 Jupyter Notebook。如果想進一步瞭解 Anaconda 的使用方法,可參考我的上一篇文章《致Python初學者們 – Anaconda入門使用指南》。
對於有經驗的同學,自然使用命令列最為便捷。
如果在 conda 環境中,可以使用如下命令安裝:
或者直接透過 pip 安裝:
更多的安裝說明請參考官網。
執行
進入 notebook
退出 notebook
介面
Notebook 文件是由一系列單元(Cell)構成,主要有兩種形式的單元:
程式碼單元:這裡是你編寫程式碼的地方,透過按 Shift + Enter 執行程式碼,其結果顯示在本單元下方。程式碼單元左邊有 In [1]: 這樣的序列標記,方便人們檢視程式碼的執行次序。Markdown 單元:在這裡對文字進行編輯,採用 markdown 的語法規範,可以設定文字格式、插入連結、圖片甚至數學公式。同樣使用 Shift + Enter 執行 markdown 單元來顯示格式化的文字。
Jupyter Notebook 編輯介面
類似於 Linux 的 Vim 編輯器,在 notebook 中也有兩種模式:
編輯模式:編輯文字和程式碼。選中單元並按 Enter 鍵進入編輯模式,此時單元左側顯示綠色豎線。
命令模式:用於執行鍵盤輸入的快捷命令。透過 Esc 鍵進入命令模式,此時單元左側顯示藍色豎線。如果要使用快捷鍵,首先按 Esc 鍵進入命令模式,然後按相應的鍵實現對文件的操作。比如切換成程式碼單元(Y)或 markdown 單元(M),或者在本單元的下方增加一單元(B)。檢視所有快捷命令可以按H。
儘管一開始需要花費一些學習成本,但熟練使用快捷鍵將大大提高工作效率。試想你在鍵盤上十指如飛時,如果還需要透過滑鼠來操作文件,是不是很影響思考速度呢?
三、Jupyter Notebook 進階功能數學公式編輯如果你曾做過嚴肅的學術研究,一定對 LaTeX 並不陌生,這簡直是寫科研論文的必備工具,不但能實現嚴格的文件排版,而且能編輯複雜的數學公式。在 Jupyter Notebook 的 markdown 單元中我們也可以使用 LaTeX 的語法來插入數學公式。
在文字行中插入數學公式,使用一對 $符號,比如質能方程 。如果要插入一個數學區塊,則使用一對美元$符號。比如下面公式表示 z=x/y:
如何在 notebook 中使用 LaTeX,可進一步參考 A Primer on Using LaTeX in Jupyter Notebooks 這篇文章。
幻燈片製作既然Jupyter Notebook擅長展示資料分析的過程,除了透過網頁形式分享外,當然也可以將其製作成幻燈片的形式。這裡有一個幻燈片示例供參考,其製作風格簡潔明晰。
那麼如何用 Jupyter Notebook 製作幻燈片呢?首先在 notebook 的選單欄選擇 View > Cell Toolbar > Slideshow,這時在文件的每個單元右上角顯示了 Slide Type 的選項。透過設定不同的型別,來控制幻燈片的格式。有如下5中型別:
Slide:主頁面,透過按左右方向鍵進行切換。
Sub-Slide:副頁面,透過按上下方向鍵進行切換。
Fragment:一開始是隱藏的,按空格鍵或方向鍵後顯示,實現動態效果。
Skip:在幻燈片中不顯示的單元。
Notes:作為演講者的備忘筆記,也不在幻燈片中顯示。
Jupyter Notebook 幻燈片設定
當編寫好了幻燈片形式的 notebook,如何來演示呢?這時需要使用 nbconvert:
在命令列中敲入上述程式碼後,瀏覽器會自動開啟相應的幻燈片。
魔術關鍵字
魔術關鍵字(magic keywords),正如其名,是用於控制 notebook 的特殊的命令。它們執行在程式碼單元中,以 % 或者 %% 開頭,前者控制一行,後者控制整個單元。
比如,要得到程式碼執行的時間,則可以使用 %timeit;如果要在文件中顯示 matplotlib 包生成的圖形,則使用 % matplotlib inline;如果要做程式碼除錯,則使用 %pdb。但注意這些命令大多是在Python kernel 中適用的,其他 kernel 大多不適用。有許許多多的魔術關鍵字可以使用,更詳細的清單請參考 Built-in magic commands 。
---------------河南新華 -
6 # IT資訊i
少年,少用除錯.多用測試案例. 人生苦短.單步很慢.
Jupyter Notebook的文件裡面搜尋“debug”,只有4個匹配項,你就知道它根本不是用來做你習以為常的那種除錯的。
Jupyter Notebook最大的作用是“分塊執行程式碼”,並能儲存程式碼執行後的狀態。
在一個cell裡面,測試一個或簡單或複雜的函式或者專案,查看了輸出之後,再編寫下面程式碼,這是Jupyter下的工作流,而不是所謂單步除錯、斷點除錯這些。
要使用這些功能請移步其他“正宗的編輯器”。Jupyter本質上是個增強的基於Web的互動式shell。
回覆列表
從功能上來說,jupyter對學習一些複雜python程式碼很有幫助,但是從使用者體驗上來說,一開始會不太適應,介面不太友好