C語言中文網 目錄

Python是什么,Python語言及其特點簡介

雖然軟件產業的歷史相對于人類歷史只是白駒過隙,但世界上卻存在非常多的編程語言,Python」 就是其中之一。

Python 語言算得上一門“古老”的編程語言,Python 流行這么久,必然有它的獨到之處,本節我們簡單介紹 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 版本。
......

本教程將以 Python 3.x 來介紹 Python 編程,也會簡單對比 Python2.x 與 Python 3.x 的語法差異。

目前,由于大數據、人工智能(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 程序同樣很容易反編譯,但絲毫不會影響它的流行。

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo