Python的前世此生

放棄python

拾起程序員

放棄正則表達式

拾起算法

最終決定好好的編寫一次Python的學習筆記shell

人生苦短,我用Python --------------Life is short, you need Python 數據庫

再不抓緊,就已經30了編程

 【1】Python 的 起源

  Python 的創始人爲吉多·範羅蘇姆(Guido van Rossum)瀏覽器

Python的創始人爲吉多·範羅蘇姆。1989年的聖誕節期間,吉多·範羅蘇姆爲了在阿姆斯特丹打發時間,決心開發一個新的腳本解釋程序,做爲ABC語言的一種繼承。之因此選中Python做爲程序的名字,是由於他是BBC電視劇——蒙提派森的飛行馬戲團的愛好者。ABC是由吉多參加設計的一種教學語言。就吉多本人看來,ABC這種語言很是優美和強大,是專門爲非專業程序員設計的。可是ABC語言並無成功,究其緣由,吉多認爲是非開放形成的。吉多決心在Python中避免這一錯誤,並獲取了很是好的效果,完美結合了C和其餘一些語言。
編程語言

就這樣,Python在吉多手中誕生了。實際上,第一個實現是在 Mac 計算機上。能夠說,Python是從ABC發展起來,主要受到了 Modula-3(另外一種至關優美且強大的語言,爲小型團體所設計的)的影響。而且結合了Unix shell 和C的習慣。函數式編程

當前吉多仍然是Python的主要開發者,決定整個Python語言的發展方向。Python社羣常常稱呼他是終身仁慈的獨裁者(BDFL)。

Python 2.0於2000年10月16日發佈,增長了實現完整的垃圾回收,而且支持Unicode。同時,整個開發過程更加透明,社羣對開發進度的影響逐漸擴大。

Python 3.0於2008年12月3日發佈,此版不徹底兼容以前的Python源代碼。不過,不少新特性後來也被移植到舊的Python 2.6/2.7版本

 

[2]特性與設計哲學

Python是徹底面向對象的語言。函數、模塊、數字、字符串都是對象。而且徹底支持繼承、重載、派生、多重繼承,有益於加強源代碼的複用性。Python支持重載運算符,所以Python也支持泛型設計。相對於Lisp這種傳統的函數式編程語言,Python對函數式編程只提供了有限的支持。有兩個標準庫(functools, itertools)提供了與Haskell和Standard ML中相似的函數式程序設計工具。

雖然Python可能被粗略地分類爲「腳本語言」,但實際上一些大規模軟件開發計劃例如Zope、Mnet及BitTorrent,Google也普遍地使用它。Python的支持者較喜歡稱它爲一種高端動態編程語言,緣由是「腳本語言」泛指僅做簡單程序設計任務的語言,如shell script、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。

Python自己被設計爲可擴展的。並不是全部的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員可以輕鬆地使用C、C++、Cython來編寫擴展模塊。Python編譯器自己也能夠被集成到其它須要腳本語言的程序內。所以,有不少人把Python做爲一種「膠水語言」使用。使用Python將其餘語言編寫的程序進行集成和封裝。在Google內部的不少項目,例如Google應用服務引擎使用C++編寫性能要求極高的部分,而後用Python或Java/Go調用相應的模塊。《Python技術手冊》的做者馬特利(Alex Martelli)說:「這很難講,不過,2004年,Python已在Google內部使用,Google召募許多Python高手,但在這以前就已決定使用Python。他們的目的是儘可能使用Python,在不得已時改用C++;在操控硬件的場合使用C++,在快速開發時候使用Python。」

Python的設計哲學是「優雅」、「明確」、「簡單」。Python開發者的哲學是「用一種方法,最好是隻有一種方法來作一件事」,也所以它和擁有明顯我的風格的其餘語言很不同。在設計Python語言時,若是面臨多種選擇,Python開發者通常會拒絕花俏的語法,而選擇明確沒有或者不多有歧義的語法。這些準則被稱爲「Python格言」。在Python解釋器內運行import this能夠得到完整的列表。

[3]爲何選擇python

同同樣問題,用不一樣的語言解決,代碼量差距仍是不少的,通常狀況下 Python 是 Java 的 1/5,因此說 人生苦短,我用 Python

[4]Python 的優缺點

優勢------------------------------------

1. 簡單:Python奉行簡潔主義,易於讀寫,它使你可以專一於解決問題而不是去搞明白語言自己。

2. 免費:Python是開源軟件。這意味着你不用花一分錢便能複製、閱讀、改動它,這也是Python愈來愈優秀的緣由——它是由一羣但願看到一個更加優秀的Python的人創造並常常改進着的。

3. 兼容性:Python兼容衆多平臺,因此開發者不會遇到使用其餘語言時常會遇到的困擾。

4. 面向對象:Python既支持面向過程,也支持面向對象編程。在面向過程編程中,程序員複用代碼,在面向對象編程中,使用基於數據和函數的對象。

5. 豐富的庫:Python標準庫確實很龐大。它能夠幫助你處理各類工做,包括正則表達式、文檔生成、單元測試、線程、數據庫、網頁瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統、GUI(圖形用戶界面)、Tk和其餘與系統有關的操做。

6. 規範的代碼:Python採用強制縮進的方式使得代碼具備極佳的可讀性。

7. 可擴展性和可嵌入性。若是你須要你的一段關鍵代碼運行得更快或者但願某些算法不公開,你能夠把你的部分程序用C或C++編寫,而後在你的Python程序中使用它們。你能夠把Python嵌入你的C/C++程序,從而向你的程序用戶提供腳本功能。

缺點----------------------------------

運行速度相對慢

普及率還不是很高

能好好學習的資源相對較少

相關文章
相關標籤/搜索