01-認識 Python

認識 Python

人生苦短,我用 Python —— Life is short, you need Pythonpython

Python 的起源

Python 的創始人爲吉多·範羅蘇姆(Guido van Rossum)程序員

  1. 1989 年的聖誕節期間,吉多·範羅蘇姆爲了在阿姆斯特丹打發時間,決心開發一個新的解釋程序,做爲 ABC 語言的一種繼承( 感受下什麼叫牛人
  2. ABC 是由吉多參加設計的一種教學語言,就吉多本人看來,ABC 這種語言很是優美和強大,是專門爲非專業程序員設計的。可是 ABC 語言並無成功,究其緣由,吉多認爲是非開放形成的。吉多決心在 Python 中避免這一錯誤,並獲取了很是好的效果
  3. 之因此選中 Python(蟒蛇) 做爲程序的名字,是由於他是 BBC 電視劇——蒙提·派森的飛行馬戲團(Monty Python's Flying Circus)的愛好者
  4. 1991 年,第一個 Python 解釋器 誕生,它是用 C 語言實現的,並可以調用 C 語言的庫文件

解釋器(科普)

計算機不能直接理解任何除機器語言之外的語言 ,因此必需要把程序員所寫的程序語言翻譯成機器語言,計算機才能執行程序。將其餘語言翻譯成機器語言的工具,被稱爲編譯器數據庫

編譯器翻譯的方式有兩種:一個是編譯,另一個是解釋。兩種方式之間的區別在於翻譯時間點的不一樣。當編譯器以解釋方式運行的時候,也稱之爲解釋器編程

  • 編譯型語言:程序在執行以前須要一個專門的編譯過程,把程序編譯成爲機器語言的文件,運行時不須要從新翻譯,直接使用編譯的結果就好了。程序執行效率高,依賴編譯器,跨平臺性差些。如 C、C++
  • 解釋型語言:解釋型語言編寫的程序不進行預先編譯,以文本方式存儲程序代碼,會將代碼一句一句直接運行。在發佈程序時,看起來省了道編譯工序,可是在運行程序的時候,必須先解釋再運行

編譯型語言和解釋型語言對比

  • 速度 —— 編譯型語言比解釋型語言執行速度快
  • 跨平臺性 —— 解釋型語言比編譯型語言跨平臺性好

Python 的設計目標

1999 年,吉多·範羅蘇姆向 DARPA 提交了一條名爲 「Computer Programming for Everybody」 的資金申請,並在後來講明瞭他對 Python 的目標:網絡

  • 一門 簡單直觀的語言 並與主要競爭者同樣強大
  • 開源 ,以便任何人均可覺得它作貢獻
  • 代碼 像純英語那樣容易理解
  • 適用於 短時間 開發的平常任務

這些想法中的基本都已經成爲現實,Python 已經成爲一門流行的編程語言機器學習

Python 的設計哲學

  1. 優雅
  2. 明確
  3. 簡單
  • Python 開發者的哲學是: 用一種方法,最好是隻有一種方法來作一件事
  • 若是面臨多種選擇,Python 開發者通常會拒絕花俏的語法,而選擇 明確沒有或者不多有歧義的語法

在 Python 社區,吉多被稱爲「仁慈的獨裁者」編程語言

爲何選擇 Python?

  • 代碼量少
  • 功能強大
  • ……

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

Python 特色

  • Python 是 徹底面向對象的語言
    • 函數模塊數字字符串都是對象,在 Python 中一切皆對象
    • 徹底支持繼承、重載、多重繼承
    • 支持重載運算符,也支持泛型設計
  • Python 擁有一個強大的標準庫,Python 語言的核心只包含 數字字符串列表字典文件 等常見類型和函數,而由 Python 標準庫提供了 系統管理網絡通訊文本處理數據庫接口圖形系統XML 處理 等額外的功能
  • Python 社區提供了大量的第三方模塊,使用方式與標準庫相似。它們的功能覆蓋 科學計算人工智能機器學習Web 開發數據庫接口圖形系統 多個領域

面向對象的思惟方式

  • 面向對象 是一種 思惟方式,也是一門 程序設計技術
  • 要解決一個問題前,首先考慮 由誰 來作,怎麼作事情是 的職責,最後把事情作好就行!
    • 對象 就是
  • 要解決複雜的問題,就能夠找 多個不一樣的對象各司其職 ,共同實現,最終完成需求

Python 的優缺點

優勢

  • 簡單、易學
  • 免費、開源
  • 面向對象
  • 豐富的庫
  • 可擴展性
  • ……

缺點

  • 運行速度
  • 國內市場較小
  • 中文資料匱乏
相關文章
相關標籤/搜索