首頁 >後端開發 >Python教學 >Python語言及其特色簡介

Python語言及其特色簡介

赵强
赵强原創
2019-05-30 13:11:363240瀏覽

Python語言及其特色簡介

Python 簡史

Python 由Guido van Rossum於1989 年底出於某種娛樂目的而開發, Python 語言是基於ABC 教學語言的,而ABC 這種語言非常強大,是專門為非專業程式設計師設計的。但 ABC 語言並沒有廣泛的應用, Guido 認為是非開放性造成的。
Python 的「出身」部分影響了它的流行,Python 上手非常簡單,它的語法非常像自然語言,對非軟體專業人士而言,選擇Python 的成本最低,因此某些醫學甚至藝術專業背景的人,往往會選擇Python 作為程式語言。
Guido 在 Python 中避免了 ABC 不夠開放的劣勢,Guido 加強了 Python 和其他語言如 C、C  和 Java 的結合性。此外,Python 還實現了許多 ABC 中未曾實現的東西,這些因素大大提高了 Python 的流行程度。
2008 年 12 月,Python 發布了 3.0 版本(也常被稱為 Python 3000,或簡稱 Py3k)。 Python 3.0 是一次重大的升級,為了避免引入歷史包袱,Python 3.0 沒有考慮與 Python 2.x 的兼容。這導致很長一段時間以來,Python 2.x 的使用者不願意升級到 Python 3.0,而這種割裂一度影響了 Python 的應用。
畢竟大勢不可抵擋,開發者逐漸發現 Python 3.x 更簡潔、更方便。現在,絕大部分開發者已經從 Python 2.x 轉移到 Python 3.x,但有些早期的 Python 程式可能依然使用了 Python 2.x 語法。
2009 年 6 月,Python 發布了 3.1 版本。
2011 年 2 月,Python 發布了 3.2 版本。
2012 年 9 月,Python 發布了 3.3 版本。
2014 年 3 月,Python 發布了 3.4 版本。
2015 年 9 月,Python 發布了 3.5 版本。
2016 年 12 月,Python 發布了 3.6 版本。
......

目前,由於大數據、人工智慧(AI)的流行,Python 變得比以往更加流行。在最新的 TIOBE 程式語言排行榜上, Python 己經迅速上升到第4 位,僅次於 Java、C、C 。 Java 佔據了世界上絕大部分電商、全融、通訊等服務端應用開發,而 C、C 佔據了世界上絕大部分貼近操作系統的硬體編程,這三門語言的地位太難動搖了。

Python 的特點

Python 是一種物件導向、解釋型、弱型別的腳本語言,它也是一種功能強大而完善的通用型語言。比起其他程式語言(如 Java),Python 程式碼非常簡單,上手非常容易。例如我們要完成某個功能,如果用 Java 需要 100 行程式碼,但用 Python 可能只需要 20 行程式碼,這是 Python 具有巨大吸引力的一大特色。

Python 的兩大特色是清晰的語法和可擴展性:

  • Python 的語法非常清晰,它甚至不是一種格式自由的語言。例如,它要求 if 語句的下一行必須向右縮進,否則不能透過編譯。
  • Python 的可擴展性體現為它的模組,Python 具有腳本語言中最豐富和強大的類別庫(這些類別庫被形象化稱為「batteries included ,內建電池」),這些類別庫涵蓋了檔案I/O、GUI、網路程式設計、資料庫存取、文字操作等絕大部分應用場景。 此外,Python 的社群也很發達,即使一些小眾的應用場景,Python 往往也有對應的開源模組來提供解決方案。

  • Python 作為一門解釋型的語言,它天生具有跨平台的特徵,只要為平台提供了相應的Python 解釋器,Python 就可以在該平台上運行。

Python 自然也具有解釋型語言的一些缺點:

  1. ##速度慢:Python 程式比Java、C、C 等程式的運作效率都要慢。
  2. 原始程式碼加密困難:不像編譯型語言的原始程式會被編譯成目標程序,Python 直接運行原始程序,因此對原始程式碼加密比較困難。

上面兩個問題其實不是什麼大問題,關於第一個問題,由於目前電腦的硬體速度越來越快,軟體工程往往更關注開發過程的效率和可靠性,而不是軟體的運作效率;至於第二個問題,則更不是問題了,現在軟體產業的大勢本來就是開源,就像Java 程式同樣很容易反編譯,但絲毫不會影響它的流行。

以上是Python語言及其特色簡介的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn