① python版本為2.7,安裝哪個ipython
最近在學習python源碼,感覺python的IDLE使用起來不是太方便,所以選擇交互性良好的ipython來進行學習。
但是系統自帶的python沒有源碼,所以要修改python源碼是不可能的,所以得自己去官網下載並安裝相應的python版本。
為了使得在學習python源碼過程更方便,我們可以配置自己安裝的python版本使用相應版本的ipython。
1. 首先得正確安裝ipython,命令為pip install ipython
2. 安裝自己的python版本,我是安裝在/home/foo/python/python2.7.6下
3. 查看已經ipython的安裝路徑,使用which ipython命令查看
4. 編輯/usr/local/bin/ipython,將#!行更改為你自己安裝的python的路徑
② Python 最重要的庫都有哪些
第一、NumPy
NumPy是Numerical
Python的簡寫,是Python數值計算的基石。它提供多種數據結構、演算法以及大部分涉及Python數值計算所需的介面。NumPy還包括其他內容:
①快速、高效的多維數組對象ndarray
②基於元素的數組計算或數組間數學操作函數
③用於讀寫硬碟中基於數組的數據集的工具
④線性代數操作、傅里葉變換以及隨機數生成
除了NumPy賦予Python的快速數組處理能力之外,NumPy的另一個主要用途是在演算法和庫之間作為數據傳遞的數據容器。對於數值數據,NumPy數組能夠比Python內建數據結構更為高效地存儲和操作數據。
第二、pandas
pandas提供了高級數據結構和函數,這些數據結構和函數的設計使得利用結構化、表格化數據的工作快速、簡單、有表現力。它出現於2010年,幫助Python成為強大、高效的數據分析環境。常用的pandas對象是DataFrame,它是用於實現表格化、面向列、使用行列標簽的數據結構;以及Series,一種一維標簽數組對象。
pandas將表格和關系型資料庫的靈活數據操作能力與Numpy的高性能數組計算的理念相結合。它提供復雜的索引函數,使得數據的重組、切塊、切片、聚合、子集選擇更為簡單。由於數據操作、預處理、清洗在數據分析中是重要的技能,pandas將是重要主題。
第三、matplotlib
matplotlib是最流行的用於制圖及其他二維數據可視化的Python庫,它由John D.
Hunter創建,目前由一個大型開發者團隊維護。matplotlib被設計為適合出版的制圖工具。
對於Python編程者來說也有其他可視化庫,但matplotlib依然使用最為廣泛,並且與生態系統的其他庫良好整合。
第四、IPython
IPython項目開始於2001年,由Fernando
Pérez發起,旨在開發一個更具交互性的Python解釋器。在過去的16年中,它成為Python數據技術棧中最重要的工具之一。
盡管它本身並不提供任何計算或數據分析工具,它的設計側重於在交互計算和軟體開發兩方面將生產力最大化。它使用了一種執行-探索工作流來替代其他語言中典型的編輯-編譯-運行工作流。它還提供了針對操作系統命令行和文件系統的易用介面。由於數據分析編碼工作包含大量的探索、試驗、試錯和遍歷,IPython可以使你更快速地完成工作。
第五、SciPy
SciPy是科學計算領域針對不同標准問題域的包集合。以下是SciPy中包含的一些包:
①scipy.integrate數值積分常式和微分方程求解器
②scipy.linalg線性代數常式和基於numpy.linalg的矩陣分解
③scipy.optimize函數優化器和求根演算法
④scipy.signal信號處理工具
⑤scipy.sparse稀疏矩陣與稀疏線性系統求解器
SciPy與Numpy一起為很多傳統科學計算應用提供了一個合理、完整、成熟的計算基礎。
第六、scikit-learn
scikit-learn項目誕生於2010年,目前已成為Python編程者首選的機器學習工具包。僅僅七年,scikit-learn就擁有了全世界1500位代碼貢獻者。其中包含以下子模塊:
①分類:SVM、最近鄰、隨機森林、邏輯回歸等
②回歸:Lasso、嶺回歸等
③聚類:K-means、譜聚類等
④降維:PCA、特徵選擇、矩陣分解等
⑤模型選擇:網格搜索、交叉驗證、指標矩陣
⑥預處理:特徵提取、正態化
scikit-learn與pandas、statsmodels、IPython一起使Python成為高效的數據科學編程語言。
③ ipython和pycharm有什麼區別
ipython和pycharm的區別:pycharm是一種python IDE,包含使用python語言開發時提高其效率的工具;ipython是一個python的互動式shell,內置了很多有用的功能和函數。
PyCharm是一種PythonIDE,帶有一整套可以幫助用戶在使用Python語言開發時提高其效率的工具,比如調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制。
(推薦教程:Python入門教程)
IPython 是一個 python 的互動式 shell,比默認的python shell 好用得多,支持變數自動補全,自動縮進,支持 bash shell 命令,內置了許多很有用的功能和函數。
IPython 為互動式計算提供了一個豐富的架構,包含:
強大的互動式 shell
Jupyter 內核
互動式的數據可視化工具
靈活、可嵌入的解釋器
易於使用,高性能的並行計算工具
④ IPython於python的區別
IPython與標准Python的最大區別在於:
ipython是一種工具,會對命令提示符的每一行進行編號。
python是語言,ipython也是基於python開發的。
⑤ ipython好還是python好
IPython 是一個 python 的互動式 shell,比默認的python shell 好用得多,支持變數自動補全,自動縮進,支持 bash shell命令,內置了許多很有用的功能和函數。
IPython 是基於BSD 開源的。
IPython 為互動式計算提供了一個豐富的架構,包含:
·強大的互動式 shell
·Jupyter 內核
·互動式的數據可視化工具
·靈活、可嵌入的解釋器
·易於使用,高性能的並行計算工具
相關推薦:《Python基礎教程》
IPython的開發者吸收了標准解釋器的基本概念,在此基礎上進行了大量的改進,創造出一個令人驚奇的工具。在它的主頁上是這么說的:「這是一個增強的互動式Pythonshell。」具有tab補全,對象自省,強大的歷史機制,內嵌的源代碼編輯,集成Python調試器,%run機制,宏,創建多個環境以及調用系統shell的能力。
IPython與標准Python的最大區別在於,Ipython會對命令提示符的每一行進行編號。
python shell與ipython的區別:
(1)python shell不能在退出保存歷史;
ipython歷史記錄自動保存:
保存在history.sqlite文件下:
可用「_」、「__」、「___」調用最近三次記錄;
(2)python shell不支持tab自動補全;
ipython支持tab補全;
(3)python shell不能快速獲取類、函數信息;
ipython通過「?」顯示對象簽名、文檔字元串、代碼位置,通過「??」顯示源代碼;
(4)python shell不能直接執行shell命令,需要藉助sys;
ipython通過「!」調用系統命令,如「!uptime」;
(5)其他
ipython有很多magic函數,可通過使用%lsmagic枚舉;
%run:運行python文件
%edit:使用編輯器打開當前函數編輯
%save:把某些歷史記錄保存到文件
%debug:激活debug程序
%timeit:獲得程序執行時間
%paste:獲取剪切板文件並執行,最好用%cpaste,可通過Ctrl+C中斷
⑥ 同一個漢字在python shell和ipython下編碼為什麼不同
stdin 和out指的是你控制台的輸入輸出時候的編碼
python在運行的時候內部存儲的編碼和這兩個沒關系,從你的環境上看,2.7系列默認是系統編碼,ipython默認是utf-8。我猜測這個應該可以根據文件的頭部編碼指定更改。
編碼問題在python3.3全部是utf-8了,而且對字元串、漢字都做了優化處理,個人覺得比較方便。
⑦ ipython notebook 和Python有什麼區別
ipython是一個 python 的互動式 shell,比默認的python shell 好用得多,支持變數自動補全,自動縮進,支持 bash shell 命令,內置了許多很有用的功能和函數。
IPython Notebook是web based IPython封裝,但是可以展現富文本,使得整個工作可以以筆記的形式展現、存儲,對於交互編程、學習非常方便。