Python介紹
起源
Python(英國發音:/?pa?θ?n/ 美國發音:/?pa?θɑ?n/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於1989年發明,第一個公開發行版發行於1991年。主要應用領域。
web開發
科學運算,人工智能
系統運維
金融(策略回放-京東量化交易平臺)
圖形GUI
語言分類
編譯型和解釋型
=======================================================================
編譯型
編譯器 鏈接程序 目標文件 可執行文件
舉例:C/C++, PascalObject, Pascal(Delphi), VB
速度快 對系統要求低,用於開發操作系統,數據庫系統,大型應用系統
解釋型
邊解釋邊執行
舉例:Basic,Python
易移植,速度慢
適用於對速度要求不高的腳本,輔助接口開發,對系統平臺兼容性有要求的程序
新興預言有把二者折中的趨勢
JAVA具有比較接近解釋型語言的特征,預編譯生成介於機器碼和源代碼之間的中介代碼,運行的時候由JVM解釋執行。
=======================================================================
動態語言和靜態語言
動態語言
指在運行期間才去做數據類型檢查的語言。使用動態語言編程時,永遠不用給任何變量指定數據類型。
如Python和Ruby
靜態語言
數據類型在編譯期間檢查,寫程序時要聲明所有變量的數據類型。
如C/C++, C#,JAVA
=======================================================================
強類型定義語言和弱類型定義語言
強制數據類型定義的語言,一旦一個變量被指定某個數據類型,如不經過強制轉換,那麽它就永遠是這個數據類型。是類型安全的語言。
弱類型定義語言是數據類型可以被忽略的語言,一個變量可以賦不同數據類型的值。
強類型定義語言速度可能遜色於弱類型定義語言,但其帶來的嚴謹性可以有效避免許多錯誤。
是否為動態語言和是否類型安全沒有聯系。
Python是動態語言,是強類型定義語言,類型安全的語言;
VB是動態語言,是弱類型定義語言,類型不安全的語言;
JAVA是靜態語言,是強類型定義語言,類型安全的語言。
綜上,Python是動態的解釋型的強類型定義語言。
優缺點
優雅,明確,簡單
開發效率高,有非常強大的第三方庫
高級語言(無需考慮管理你的程序所使用的的內存等底層細節)
可移植性
可擴展性(部分代碼出於效率和安全考慮,可以使用C/C++編寫,然後在Python程序中使用)
可嵌入性(可以把Python嵌入C++程序,從而向程序用戶提供腳本功能)
速度慢
代碼不能加密
線程不能利用多CPU問題
任何一門語言都不完美,語言是實現程序設計師思想的工具。
Shell是腳本語言,Python不止是腳本語言。
解釋器
CPython 使用C語言開發,命令行下運行Python,默認使用的是CPython
IPython 基於CPython之上的一個交互式解釋器
PyPy 其目標是執行速度,采用JIT技術,對Python代碼進行動態編譯
Jython 運行在JAVA平臺的Python解釋器,可以把Python代碼編譯成JAVA字節碼
IronPython 運行在.net平臺的Python解釋器
如果要和JAVA或.net平臺交互,最好的辦法不是使用Jython或IronPython,而是通過網絡調用來交互,確保各程序之間獨立性。
發展史
1991年,第一個Python編譯器誕生。
1999年,WEB框架Zope誕生
2000年,Python2.0加入內存回收機制
2004年,Python2.4發布,同年Python最流行的Web框架Django誕生。
2008年10月,Python2.6發布。
2008年12月,Python3.0發布。
2010年7月,Python2.7發布。
2014年,宣布Python2.7將會支持到2020年。
Python介紹