ipython和jupyter_IPython与Jupyter Notebook以及Anaconda
在正式講解知識點之前,我們要進行一下準備工作即選擇相應(yīng)的工具,俗話說的好“工欲善其事必先利其器”,選擇一個好的工具你已經(jīng)向成功邁出一大步。有 Python 基礎(chǔ)的同學對 IPython 一定不陌生,但是可能對后者 Jupyter notebook 與 Anconda 不甚了解,下面就對這本教程中常用工具做簡單的介紹。
1. IPython交互式解釋器
IPython(https://ipython.org/) 它是 Python 的交互式解釋器,我相信這個工具大家都是用過,如果你沒有使用過,那很抱歉,親,你需要先去本網(wǎng)站學習《Python入門基礎(chǔ)教程》。
交互可以簡單理解為人機交流,就比如你點擊打開手機上的 App,然后這個 App要給你一個反饋,無非兩種情況,APP 順利打開或者出現(xiàn)了卡死的情況,這就是對交互最簡單的理解。有的 IDE 已經(jīng)集成了 IPython,比如說 Pycharm,但是也看個人習慣,比如就總是喜歡用終端的的 IPython,就像有些程序員不喜歡用 IDE,而喜歡用文本編輯器一樣。
1) IPython誕生背景
2001年,Fernando Pérez 為了得到一個更為高效的交互式 Python 解釋器發(fā)起了 IPython項目。后來它逐漸被公認為現(xiàn)代科學計算中最重要的 Python 工具之一。
IPython 本身并沒有提供任何的計算或數(shù)據(jù)分析功能,其設(shè)計目的是在交互式計算和軟件開發(fā)這兩個方面最大化地提高生產(chǎn)力。此外,它跟操作系統(tǒng) shell 和文件系統(tǒng)之間也有著非常緊密的集成。因此 IPython 將有助于提高工作效率。在 2014 年 Fernando Pérez 和 IPython團隊又發(fā)布了一個項目,它就是 Jupyter,所以說它門兩是誕生自一家的兄弟。
2) IPython常用魔法命令
獲得幫助魔法命令:
%magic : 查看模式命令的幫助。
%automagic:啟動或者關(guān)閉魔法命令
%lsmagic : 簡單地列出可用的魔法命令。
%quickref : 所有 ipython 的特定語法和魔法的快速參考。
%man : Shell 命令 man, 獲得 shell 命令幫助。
%pinfo : 獲取對象的詳細信息后面跟想要對象。
%pinfo2 : 獲取對象的額外詳細信息后面跟想要對象。
文件的操作相關(guān)魔法命令:
%mv : 移動文件,mv 舊位置 新位置。
%cp : 復制文件,cp 原文件 新文件, 文件夾加 -r。
%mkdir : 創(chuàng)建文件夾。
%rm : 刪除文件,強制刪除文件夾 rm -rf 文件夾名。
%rmdir : 刪除文件夾, 需要文件夾為空。
%xdel:在 IPython 內(nèi)部刪除一個變量,清除相關(guān)的引用
其他常用的一些魔法命令:
%timeit:用來檢查一段 Python 語句的執(zhí)行時間。
%pwd:查看當前的文件路徑。
%run:在 IPython 中運行一個 Python腳本。
%paste:從剪貼板中執(zhí)行已經(jīng)預(yù)先格式化的 Python 代碼。
%debug:從最后發(fā)生報錯的底部進入交互式調(diào)試器。
%pdb:出現(xiàn)任意報錯后自動進入調(diào)試器。
%who:根據(jù)不同級別的信息詳細程度,展示交互命名空間中定義的變量。
2. Jupyter交互式筆記本
Jupyter Notebook(官網(wǎng)https://jupyter.org/)是一個開源 Web 應(yīng)用程序,它使用 IPython 解釋器作為內(nèi)核,所以它同樣支持魔法命令(magic)。它允許你執(zhí)行創(chuàng)建和共的操作,共享內(nèi)容包括實時代碼、方程式、可視化效果以及敘述文本的文檔。主要用途包括:數(shù)據(jù)清理和轉(zhuǎn)換,數(shù)值模擬,統(tǒng)計建模,數(shù)據(jù)可視化,機器學習等。
Jupyter Notebook 是以網(wǎng)頁的形式打開,可以在網(wǎng)頁頁面中直接編寫代碼和運行代碼,代碼的運行結(jié)果也會直接在代碼塊下顯示。如在編程過程中需要編寫說明文檔,可在同一個頁面中直接編寫,便于作及時的說明和解釋。Jupyter 不僅適用于 Python,它還可以支持 40 多種編程語言,而 IPython 內(nèi)核只不過是在使用 Python 時才使用。Jupyter Notebook 對于數(shù)據(jù)分析和數(shù)據(jù)可視化是一個非常有用的工具。
1) Jupyter Notebook安裝與啟動
安裝非常的簡單可以是直接采用 pip 的形式進行安裝:
python -m pip install jupyter
安裝完成后使用如下方式進行啟動:
jupyter notebook
啟動后會自動跳轉(zhuǎn)到 Jupyter Ntoebook 的網(wǎng)頁頁面,如下所示:
圖1:Jupyter Notebook(點擊查看高清圖)
同時在 CMD 命令行打印如下數(shù)據(jù):
C:\Users\Administrator>jupyter notebook
[I 17:34:41.441 NotebookApp] Serving notebooks from local directory: D:\jupyter-notebook
[I 17:34:41.442 NotebookApp] The Jupyter Notebook is running at:
[I 17:34:41.443 NotebookApp] http://localhost:8888/?token=4d4525c49a9a9b99cc96e019c9b0dc0bfea666d4c4535878
[I 17:34:41.446 NotebookApp] or http://127.0.0.1:8888/?token=4d4525c49a9a9b99cc96e019c9b0dc0bfea666d4c4535878
[I 17:34:41.448 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 17:34:41.550 NotebookApp]
在后續(xù)章節(jié)中我們會經(jīng)常和它打交道。對于使用的其他方法,大家可以參看官網(wǎng)了解詳細內(nèi)容,或者在網(wǎng)絡(luò)搜索自行學習,或者參考本網(wǎng)站《Jupyter Notebook》一節(jié)。
2) Jupyter Notebook主要特點
下面給大家簡單總結(jié)一下 Jupyter Notebook主要特點,如下所示:
編程時具有語法高亮、縮進、Tab 鍵補全的功能。
可直接通過瀏覽器運行代碼,同時在代碼塊下方展示運行結(jié)果。
以富媒體格式展示計算結(jié)果,富媒體格式包括:HTML、LaTeX、PNG、SVG 等。
對代碼編寫說明文檔或語句時,支持 Markdown 語法。
Jupyter Notebook 系統(tǒng)允許你是用 Markdown 和 HTML 創(chuàng)建包含代碼和文本的富文本,其他編程語言也針對 Jupyter 實現(xiàn)了內(nèi)核,允許你在 Jupyter 中使用多中語言而絕對不僅僅是 Python 語言,所以千萬不要小瞧它哦。在以后的章節(jié)知識講解中,你會對它有更深入的認識。
3. Python包管理器 Anaconda
Anaconda(https://www.anaconda.com/) 自稱是“全球最受歡迎的數(shù)據(jù)科學平臺”,它是一個開源的 Python 發(fā)行版本,其包含了conda、Python 等 180 多個科學包及其依賴項。 因為包含了大量的科學包,所以 Anaconda 的下載文件比較大。可參見《Python Anaconda是什么?》一文詳細了解。
大家可以直接在官網(wǎng)下載然后傻瓜式安裝即可,可參見《Anaconda下載和安裝教程(圖解)》一文。Anaconda 的功能非常的強大,當你下載完成后,這個平臺已經(jīng)為你集成了所有的和科學計算相關(guān)的包,你可以使用下面的命令查看:
conda list
通過 conda 創(chuàng)建一個虛擬“房間”,可以方便未來對不同版本的包進行管理,比如 Python 2.x 與 Python 3.x 具體方法如下:
conda create -n python37 python=3.7.4
這個命令將會自動創(chuàng)建 python37 目錄中并配置 Python 3.7.4 版本的虛擬環(huán)境。大家可以參考官網(wǎng)文檔了解其他命令或在命令行工具中輸入 conda --help 查看其他命令,這里不做具體介紹了。
上述就是在數(shù)據(jù)分析中經(jīng)常用到的工具,當然 IDE Pycharm(推薦使用) 也必不可少,希望大家可以提前在自己的電腦上安裝好工具,如果安裝過程中遇到問題,要多查多問學會解決問題,本教程適合 Python 3.x 以上版本并以 Windows 做為學習平臺,推薦大家使用 3.6 以上穩(wěn)定支持版本。本教程中使用了 Python 3.7 版本,關(guān)于 Python 相關(guān)問題可以參考本網(wǎng)站教程《Python入門基礎(chǔ)教程》,其余可參看網(wǎng)絡(luò)資源或者官方文檔。
總結(jié)
以上是生活随笔為你收集整理的ipython和jupyter_IPython与Jupyter Notebook以及Anaconda的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [C++] 我们需要掌握多少语法细节
- 下一篇: Javascript Patterns-