2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

《Python for Excel》讀書筆記連載4:Python開發(fā)環(huán)境之Jupyter筆記本

 hercules028 2021-11-23

excelperfect

引言:這是《Python for Excel》的第二章《Chapter 2:Development Environment》中講解Jupyter Notebooks的部分。工欲善其技,必先利其器。了解和熟練操作好的開發(fā)工具,在學(xué)習(xí)和使用Python時就會更加專注于其自身,并且也有助于Python開發(fā)。

在此特別說明,這里發(fā)布的文章僅僅為學(xué)習(xí)筆記,略去了書中一些我認(rèn)為無關(guān)緊要的文字,或者稍作修改,并且有些地方加上了我自己學(xué)習(xí)感悟,有興趣的朋友可以對照原書研讀。此外,如有侵權(quán),留言告知,我會刪除。

Jupyter Notebooks

在上一節(jié)中,展示了如何從Anaconda提示符啟動交互式Python會話。如果你想要一個簡陋的環(huán)境來測試一些簡單的東西,這非常有用。然而,對于大多數(shù)工作,你需要一個更易于使用的環(huán)境。例如,在Anaconda提示符下運(yùn)行PythonREPL很難返回到前面的命令并顯示圖表。幸運(yùn)的是,Anaconda提供的不僅僅是Python解釋器:它還包括Jupyter筆記本,這是在數(shù)據(jù)科學(xué)環(huán)境下運(yùn)行Python代碼的最流行的方式之一。Jupyter筆記本允許你通過將可執(zhí)行Python代碼與格式化文本、圖片和圖表組合到一個在瀏覽器中運(yùn)行的交互式筆記本中來講述故事。它們對初學(xué)者很友好,因此對剛開始學(xué)習(xí)Python特別有用。同時,它們在教學(xué)、原型制作和研究方面也非常受歡迎,因?yàn)樗鼈兇龠M(jìn)了可復(fù)制的研究。

Jupyter筆記本已經(jīng)成為Excel的一個重要競爭對手,因?yàn)樗鼈兒w了與工作簿大致相同的用例:可以快速準(zhǔn)備、分析和可視化數(shù)據(jù)。與Excel的不同之處在于,所有這些都是通過編寫Python代碼實(shí)現(xiàn)的,而不是在Excel中用鼠標(biāo)點(diǎn)擊。另一個優(yōu)點(diǎn)是Jupyter筆記本不會混合數(shù)據(jù)和業(yè)務(wù)邏輯:Jupyter筆記本保存你的代碼和圖表,而通常使用外部CSV文件或數(shù)據(jù)庫中的數(shù)據(jù)。與Excel相比,在筆記本中顯示Python代碼可以更容易地查看正在發(fā)生的事情,而Excel公式隱藏在單元格值后面。Jupyter筆記本也很容易在本地和遠(yuǎn)程服務(wù)器上運(yùn)行。服務(wù)器通常比你的本地計(jì)算機(jī)具有更大的能力,并且可以在無人參與的情況下運(yùn)行代碼,這在Excel中是很難做到的。

在本節(jié)中,將向你展示如何運(yùn)行和導(dǎo)航Jupyter筆記本的基本知識:我們將了解筆記本單元格,并了解編輯和命令模式之間的區(qū)別,如何正確關(guān)閉筆記本,了解單元格運(yùn)行順序的重要性。

運(yùn)行JupyterNotebooks

在Anaconda提示符下,更改到相對應(yīng)的存儲庫的目錄,然后啟動Jupyter筆記本服務(wù)器:

(base)> cd D:\完美Excel\

(base)> jupyternotebook

這將自動打開瀏覽器并顯示Jupyter儀表板,其中包含運(yùn)行命令所在目錄中的文件。在Jupyter儀表板的右上角,單擊New,然后從下拉列表中選擇Python3(參見圖2-2)。

圖片

圖2-2:Jupyter儀表板

這將為你的第一個空J(rèn)upyter筆記本打開一個新的瀏覽器選項(xiàng)卡,如圖2-3所示。

圖片

圖2-3:空的Jupyter筆記本

一個好習(xí)慣是點(diǎn)擊Jupyter徽標(biāo)旁邊的Untitled1,將工作簿重命名為更有意義的內(nèi)容,例如first_筆記本。圖2-3的下半部分顯示了一個筆記本單元格。

筆記本單元格

在圖2-3中,可以看到一個帶有閃爍光標(biāo)的空單元格。如果光標(biāo)不閃爍,用鼠標(biāo)點(diǎn)擊單元格,即在[]的右側(cè)。現(xiàn)在重復(fù)上一節(jié)中的練習(xí):鍵入3+4并通過單擊頂部菜單欄中的運(yùn)行按鈕運(yùn)行單元格,或者更簡單地通過按Shift+Enter運(yùn)行單元格。這將運(yùn)行在單元格中的代碼,在單元格下方打印結(jié)果并跳轉(zhuǎn)到下一個單元格。在本例中,它在下面插入一個空單元格,因?yàn)榈侥壳盀橹刮覀冎挥幸粋€單元格。更詳細(xì)一點(diǎn):當(dāng)一個單元格在計(jì)算時,它顯示在[*]中,當(dāng)它完成時,星號變成一個數(shù)字,例如在[1]中。在單元格下方,相應(yīng)的輸出將標(biāo)有相同的編號:Out[1]。每次運(yùn)行單元格時,計(jì)數(shù)器都會增加1,這有助于查看單元格的執(zhí)行順序。接下來,我將以這種格式顯示代碼示例,例如,前面的REPL示例如下所示:

In [1]: 3 + 4

Out[1]: 7

當(dāng)通過按Shift+Enter來運(yùn)行它時,將獲得我在Out[1]下顯示為輸出的內(nèi)容。在瀏覽器中輸入時你會注意到,輸入單元格使用不同的顏色對字符串、數(shù)字等進(jìn)行格式設(shè)置,以便于閱讀。這稱為語法突出顯示。

單元格輸出

如果單元格中的最后一行返回值,則Jupyter筆記本會在Out[]下自動打印該值。但是,當(dāng)你使用print函數(shù)或出現(xiàn)異常時,它將直接打印在In單元格的下方,而不帶Out[]標(biāo)簽。本書中的代碼示例的格式反映了這種行為。

單元格可以有不同的類型,我們感興趣的有兩種:

代碼

這是默認(rèn)類型。只要你想運(yùn)行Python代碼,就可以使用它。

Markdown

Markdown是一種使用標(biāo)準(zhǔn)文本字符進(jìn)行格式化的語法,可用于在筆記本中包含格式良好的解釋和說明。

要將單元格類型更改為Markdown,選擇該單元格,然后在“單元格模式”下拉列表中選擇Markdown(見圖2-3)。在后面的表中會為你顯示一個更改單元格模式的鍵盤快捷鍵。將空單元格更改為Markdown單元格后,鍵入以下文本,其中解釋了一些Markdown規(guī)則:

# 這是第一級標(biāo)題

## 這是第二級標(biāo)題

你可以使你的文本為*斜體*或**加粗**或'等距'

* 這是一個項(xiàng)目符號點(diǎn)

* 這是另一個項(xiàng)目符號點(diǎn)

按下Shift+Enter鍵后,文本將呈現(xiàn)為格式良好的HTML。此時,你的筆記本應(yīng)該如圖2-4所示。Markdown單元格還允許包含圖像、視頻或公式。

圖片

圖2-4:運(yùn)行一個代碼單元格和一個Markdown單元格后的筆記本

編輯 VS. 命令模式

當(dāng)你與Jupyter筆記本中的單元格交互時,你就處于編輯模式(editmode)或命令模式(commandmode):

編輯模式

單擊單元格可啟動編輯模式:選定的單元格周圍的邊框變?yōu)榫G色,單元格中的光標(biāo)閃爍。選擇單元格時,也可以按Enter鍵,而不是單擊單元格。

命令模式

要切換到命令模式,按退出鍵(ESC);選定的單元格周圍的邊框?qū)樗{(lán)色,并且不會有任何閃爍的光標(biāo)。在命令模式下可以使用的最重要的鍵盤快捷鍵如下表所示。

表:鍵盤快捷鍵(命令模式)

圖片

了解這些鍵盤快捷鍵將使你能夠高效地使用筆記本,而無需一直在鍵盤和鼠標(biāo)之間切換。

注意運(yùn)行順序

jupyter筆記本雖然簡單易用,但是如果不按順序運(yùn)行單元格,也很容易讓你陷入混亂狀態(tài)。假設(shè)有下列自上而下運(yùn)行的筆記本單元格:

In [2]: a = 1

In [3]: a

Out[3]: 1

In [4]: a = 2

單元格Out[3]按預(yù)期那樣打印值1。然而,如果你返回并再次運(yùn)行In[3],你將在這種情況下結(jié)束:

In [2]: a = 1

In [5]: a

Out[5]: 2

In [4]: a = 2

Out[5]現(xiàn)在顯示的是值2,這可能不是從頂部讀取筆記本時所期望的值,尤其是[4]中的單元格距離較遠(yuǎn)而需要向下滾動時。為了防止出現(xiàn)這種情況,建議你不只是重新運(yùn)行單個單元格,還要重新運(yùn)行它以前的所有單元格。Jupyter筆記本提供了一種簡單的方法,可以在“Cell>Runall above”菜單下完成此操作。

關(guān)閉Jupyter筆記本

每個筆記本都在一個獨(dú)立的Jupyter kernel內(nèi)核中運(yùn)行。內(nèi)核是一個“引擎”,它運(yùn)行在筆記本單元格中鍵入的Python代碼。每個內(nèi)核都以CPU和RAM的形式使用來自操作系統(tǒng)的資源。因此,當(dāng)你關(guān)閉筆記本時,還應(yīng)關(guān)閉其內(nèi)核,以便其他任務(wù)可以再次使用這些資源,這將防止你的系統(tǒng)變慢。實(shí)現(xiàn)這一點(diǎn)的最簡單方法是通過“File>Closeand Halt”關(guān)閉筆記本。如果只關(guān)閉瀏覽器選項(xiàng)卡,內(nèi)核將不會自動關(guān)閉?;蛘?,在Jupyter儀表板上,你可以從Running選項(xiàng)卡關(guān)閉正在運(yùn)行的筆記本。

要關(guān)閉整個Jupyter服務(wù)器,單擊Jupyter儀表板右上角的退出(Quit)按鈕。如果你已經(jīng)關(guān)閉了瀏覽器,則可以在筆記本服務(wù)器正在運(yùn)行的Anaconda提示符中鍵入Ctrl+C兩次,或者完全關(guān)閉Anaconda提示符。

現(xiàn)在,我們已經(jīng)知道如何使用Jupyter筆記本,接下來我們將學(xué)習(xí)如何編寫和運(yùn)行標(biāo)準(zhǔn)Python腳本。為此,我們將使用VisualStudio Code,這是一個強(qiáng)大的文本編輯器,具有很好的Python支持。

歡迎在下面留言,完善本文內(nèi)容,讓更多的人學(xué)到更完美的知識。

歡迎到知識星球:完美Excel社群,進(jìn)行技術(shù)交流和提問,獲取更多電子資料,并通過社群加入專門的微信討論群,更方便交流。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多