Python簡介

版權聲明:本文爲博主原創文章,歡迎擴散,擴散請務必註明出處。

一、什麼是Python

  Python 是一個有條理的和強大的面向對象的程序設計語言,類似於Perl, Ruby, Scheme, 或 Java.它被逐漸廣泛應用於系統管理任務的處理和Web編程。   Python注重的是如何解決問題而不是編程語言的語法和結構。 Python是一種簡單易學,功能強大的編程語言,它有高效率的高層數據結構,簡單而有效地實現面向對象編程。 Python簡潔的語法和對動態輸入的支持,再加上解釋性語言的本質,使得它在大多數平臺上的許多領域都是一個理想的腳本語言,特別適用於快速的應用程序開發。

二、Python設計思想

  Python設計者開發時總的指導思想是:簡單即是美!對於一個特定的問題,只要有一種最好的方法來解決就好了。

三、Python特色

簡單易學   Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣,儘管這個英語的要求非常嚴格!Python的這種僞代碼本質是它最大的優點之一。它使你能夠專注於解決問題而不是去搞明白語言本身。Python語法簡單,極其容易上手

免費、開源   Python是FLOSS(自由/開放源碼軟件)之一。簡單地說,可以自由地發佈這個軟件的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟件中。FLOSS是基於一個團體分享知識的概念。這是爲什麼Python如此優秀的原因之一——它是由一羣希望看到一個更加優秀的Python的人創造並經常改進着的。

可移植性   基於Python開源本質,Python已經被移植在許多平臺上(經過改動使它能夠工作在不同平臺上)。如果你小心地避免使用依賴於系統的特性,那麼你的所有Python程序無需修改就可以在下述任何平臺上面運行。這些平臺包括:Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、 BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至還有PocketPC!

解釋性   Python是一種解釋型語言。這就是說,與C語言和C的衍生語言不同,Python代碼在運行之前不需要編譯。其他解釋型語言還包括PHP和Ruby。

面向對象 Python非常適合面向對象的編程(OOP),因爲它支持通過組合(composition)與繼承(inheritance)的方式定義類(class)。Python中沒有訪問說明符(access specifier,類似C++中的public和private),這麼設計的依據是“大家都是成年人了”。

可擴展   如果你需要你的一段關鍵代碼運行得更快或者希望某些算法不公開,你可以把你的部分程序用C或C++編寫,然後在你的Python程序中使用它們。

可嵌入性   可以把Python嵌入你的C/C++程序,從而向你的程序用戶提供腳本功能

強大的標準庫 Python標準庫,包括正則表達式、文檔生成、單元測試、線程、數據庫、網頁瀏覽器、CGI、 FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統、GUI(圖形用戶界面)、Tk和其他與系統有關的操作,強大到你想不到

四、Python能做什麼

  • 系統編程 Python對操作系統服務的內置接口,使其成爲編寫可移植的維護操作系統的管理工具和部件的理想工具。Python程序可以搜索文件和目錄樹,可以運行其他程序,用進程或線程進行並行處理等。 Python的標準庫綁定了POSIX以及其他常規操作系統工具:環境變量、文件、套接字、管道、進程、多線程、正則表達式、命令行參數、標準流接口、Shell命令啓動器、文件名擴展等。
  • 用戶圖形接口 Python的簡潔以及快速的開發週期十分適合開發GUI程序 內置了Tk GUIAPI,可以生成可移植的本地觀感的GUI,可以不做任何改變就可以運行在Windows、Xwindows、MacOS等平臺 wxPython GUI API PythonCard、Dabo等構建在wxPython 和Tkinter基礎上的高級工具包 通過適當的庫,可以使用其他GUI工具包
  • Internet通信 Python提供了標準Internet模塊,可以廣泛應用到各種網絡任務中,無論服務端還是在客戶端
  • 套接字 XML-RPC、SOAP、Telnet等通信 Twisted 網站編程第三方工具:HTMLGen、mod_python、Django、TurboGears、Zop,使Python能夠快速構建功能完善和高質量的網站
  • 組件集成 Python可以通過c/c++進行擴展,並能夠嵌套c/c++系統的特性,使其能夠作爲一種靈活的粘合語言,腳本化處理其他系統和組件的行爲 調用其他現有組件,如COM、基於Java實現的Jython、基於.NET實現的IronPython、各種Corba工具包等
  • 數據庫編程 支持所有主流數據庫:Oracle、Sybase、MySQL、PostgreSQL、Informix、SQLite 定義了標準的、可移植的數據庫API Pickle 面向對象數據庫系統:ZODB 從關係數據庫映射到Python類(ORM): SQLAlchemy 、SQLObject
  • 快速原型 對Python程序來說,Python和C編寫的模塊看起來是一樣的,因此,可以在一開始利用Python做系統原型、之後再將組件移植到C/C++ 移植時Python代碼不需要重寫,系統中不需要變成C/C++的部分可以保持不變,從而使維護和使用變得輕鬆起來
  • 數值計算和科學計算 NumPy
  • 遊戲、圖像、人工智能、機器人等 Pygame/Bigworld PIL PyRO(機器人控制) 神經網絡仿真器 NLTK(自然語言分析)

五、與其他語言對比

比TCL強大,支持“大規模編程”,適宜於開發大型系統 比Perl語法簡潔,更具可讀性、更易於維護,有助於減少Bug 比Java更簡單、更易於使用 比C++更簡單、更易於使用,不與之競爭 比VB更強大也更具備跨平臺特性 比Ruby更成熟、語法更具可讀性

六、圖示

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章