Python版本
Python 2 or Python 3
- Python 2.x 是早期版本,Python 3.x是當前版本
- Python 2.7 (2.x的最終版)於2010年發佈後很少有大的更新
- Python 2.x 比 Python3.x 擁有更多的工具庫
- 大多數Linux系統默認安裝的仍是 Python 2.x
- 版本選擇取決於要解決的問題
建議選擇 Python 2.x 的情況:
- 部署環境不可控,Python版本不能自行選擇
- 某些工具庫還沒有提供支持 Python 3.x。
- 如果選擇使用 Python 3.x,需要確定要用的工具庫支持新版本。
注意:本課程將會使用Python 3.x 版本
Python環境及IDE
Python環境
Anaconda(水蟒) :是一個科學計算軟件發行版,集成了大量常用擴展包的環境,包含了 conda、Python 等 180 多個科學計算包及其依賴項,並且支持所有操作系統平臺。下載地址:https://www.continuum.io/downloads
安裝包
: pip install xxx,conda install xxx
卸載包
:pip uninstall xxx,conda uninstall xxx
升級包
:pip install upgrade xxx,conda update xxx
IDE
Jupyter Notebook:
命令:jupyter notebook
-
- Anaconda自帶,無需單獨安裝
-
- 實時查看運行過程
-
基本的web編輯器(本地)
-
- .ipynb 文件分享
-
- 可交互式
-
- 記錄歷史運行結果
IPython:
命令:ipython
-
- Anaconda自帶,無需單獨安裝
-
- Python的交互式命令行 Shell
-
- 可交互式
-
- 記錄歷史運行結果
-
- 及時驗證想法
Spyder:
命令:spyder
-
- Anaconda自帶,無需單獨安裝
-
- 完全免費,適合熟悉Matlab的用戶
-
- 功能強大,使用簡單的圖形界面開發環境
PyCharm:
-
- PyCharm,JetBrains的精品,全平臺支持,不多解釋了。
Python3.x 常用的新特性
- print() 是函數,不是一個語句
- raw_input()輸入函數,改爲 input()
- Python 3 對文本和二進制數據做了更爲清晰的區分。
- 文本由unicode表示,爲str類型
- 二進制數據由bytes (字節包)表示,爲bytes類型
- 新增數據類型 bytes (字節包),代表二進制數據以及被編碼的文本字符串前有個前綴b
- Python3中 bytes 與 str 轉換
- str 可以編碼(encode)成 bytes
2.bytes 可以解碼(decode)成 str
- str 可以編碼(encode)成 bytes
- 字符串格式化輸出方式:新增format()方式
- dict類型變化
之前的 iterkeys(), itervalues(), iteritems(),改爲現在的 keys(), values(), items()
字符串編碼格式回顧:
- ASCII:早期計算機保存英文字符的編碼方式
- GB2312:對ASCII的中文擴展
- GBK/GB18030:包括了GB2312的所有內容,同時又增加了近20000個新的漢字和符號
- Unicode:包括了全球的符號和編碼。每個字符用3~4個字節表示,浪費空間
- UTF-8:可變長的編碼方式,在互聯網上使用最廣泛的一種Unicode的實現方式,根據語種決定字符長度,如一個漢字3個字節,一個字母1個字節,也是Linux環境下默認編碼格式。