python無所不能

面對珍珠(Perl)奪目之光、靈蛇(Python)更具有上天入地之能。它可以在 MS-DOS,Amiga,BeOS, OS/2,VMS,QNX等多種OS上運行;比 Perl 和 VB更快更好,比 C 和 C++ 語言更具擴充性;不僅在“星球大戰”、 “星球之旅(Star Trek)”等超級大片中當綱特技和動畫製作,還闖入了美國航天航空局控制室。真相如何,請看報道。

對 Perl (珍珠) 語言,互聯網開發人員可以說是無人不知、無人不曉;它運行迅捷、操作簡單,而且可以讓用戶在使用時感到其樂無窮。但它也有不竟如人意的時候:它的開放性同時帶來了它的複雜性,用它處理大項目時尤其會使人無從下手。

儘管如此,大部分互聯網項目仍得靠着 Perl 這員“功臣”來搭建。

但也並非別無選擇。最新推薦的軟件叫 Python (靈蛇),它的歷史僅有 Perl 的1/4,有着許多相似的特徵。

Python 的名字源於著名的滑稽團 Monty Python,它擁有許多廣爲人知的演員,並塑造了許多婦孺皆知的銀屏形象。

那麼,互聯網世界中的 Python 又是怎樣的一個形象呢?

更快更好的 Python

與 Perl 一樣, Python 也是一種解釋語言,它完全採用面向對象的方式,語言結構介於 C 語言和 Perl 語言之間。雖然它被視作一種高極語言,但它的內置解釋器的功能卻非常基本,僅有幾種功能、操作符和關鍵詞便構成了整個程序語言。它的優勢可不僅如此,它還能通過一系列的模塊進行擴充。它既比 Perl 和 VB 語句更快更好,又比 C 和 C++ 語言更有擴充性。

同樣,Python 對程序語句的處理首先通過一個解釋和編譯系統轉換成爲一系列的字節代碼,然後再由 Python 的虛擬機進行處理。Python 設計得非常有效,主要歸功於它龐大的功能庫,因此用戶不用進入系統環境或是操作系統,也不用引用模塊。用 Python 編程,小程序還是小程序,不必勞費太多的成本和時間。

除了它的 Core 平臺外, Python 還能在 MS-DOS,Amiga,BeOS, OS/2,VMS,QNX 以及其它許多操作系統上運行。甚至還可以在掌上電腦上運行 Python 程序。
面對珍珠(Perl)奪目之光、靈蛇(Python)更具有上天入地之能。


除了它的 Core 平臺外, Python 還能在 MS-DOS,Amiga,BeOS, OS/2,VMS,QNX 以及其它許多操作系統上運行。甚至還可以在掌上電腦上運行 Python 程序。

Python 還有以下顯著的特徵:

超強的適應性

Python 可以由一系列的平臺支持。它編譯完備的格式可以在 Windows 和 MacOS 及其自身 Tk 擴充平臺上運行,並可用於開發對用戶友好的界面。在 UNIX 和其它平臺上, Python 可以作爲源代碼由程序員自行編譯,或者與其它預編的二進制編碼共同使用。它超強的適應性更能讓它有跨平臺適用的能力:用它在 UNIX 平臺上書寫的程序段95%的情況下無須作任何修改就可用於 Mac 和 PC 機。擴充 Tk 平臺對它的支持,甚至可以讓基於GUI 格式的應用程序不用大動筋骨就可在上述三種平臺上做自由切換,還保持着統一的界面。

正因爲這種天然生就的跨平臺運行能力,Python 還能支持一些平臺的擴充平臺,從而簡化和免除了對其它語言和環境的適應過程。與 SunOS / Solaris 工具帶有 Sun 音頻設備及 SGI版本帶有視音頻接口(包括 OpenGL)一樣,Windows Pytyon 解釋器也同樣帶有 Visual C++ 類庫和 Windows 音頻驅動接口。此外還有與 COM 對象進行通訊的功能。

超大的功能性

Python 幾乎無所不能。它的內核很小,但卻擁有足夠的基本程序塊用於設計大部分應用軟件。而且在某些情況下該程序語言還可以擴充與 C,C++ 和 Java 語言並用,因此沒有它編不了的程序。 Python 解釋器還帶有極爲強大的補充模塊庫,用於擴充語言能力,進行網絡通訊、文本處理和規則表達式匹配。

雖然 Python 的主要特點是隱去程序員的許多低級複雜工作,它還能支持鉤、擴充程序以及其它功能對某些操作系統進行低級接入。正因爲這種高低兼行的特點,Python 可以視作和 C,Visual Basic 同等級別的語言,或是介於二者間的其它級別的語言。

超凡的擴容性

因爲 Python 本身用 C 語言寫成(某些擴充平臺採用C++語言編寫),而且它採用開放式的源代碼,這樣可以對程序本身進行主動擴充。另外該程序語言的許多模塊由 C 和 C++ 界面支持,包括一些諸如網絡和DBM數據庫接入等基本構件,以及其它如 Tk 等許多先進工具。

此外,Python 還能融入 C 或 C++ 語言,從而可以使用 Python 語言爲應用程序提供編程界面。也正基於它的跨語言開發的支持能力,還可以使用 Python 設計應用程序後再輸送到爲 C 語言環境而無須將程序用 C 語言重寫,因爲兩種語言均可同時使用。

JPython 是一個完全採用 Java 語言編寫的 Python 解釋器,這就意味着任何 Python 程序都可與一個 Java 對象或是使用 Python 對象的應用程序相聯結。

超常的簡易性

瞭解了 Python 以上幾個基本特點後,再對程序語言它內容進行了解就相對容易了。該語言內核很小,而且格式和文體簡明。由於所有其它的組件和擴充部分都使用完全一樣的句法結構,利用 Python 編程會很快讓人速成。

但這並不意味着 Python 語言就沒有複雜的地方。對其許多擴充部分和內庫都必需經過深思熟慮後方可進行有效的利用。

超強的功能性

擁有如此廣泛的支持和博採衆長的特徵,Python 在處理一系列問題上都顯得特別有效。以下爲它的功能簡介:

計算器:

由 Python 支持的一個擴充程序叫 NumPy,它可以提供與許多標準數學庫相連的接口。Python 語言還擁有無限精確的特性,可以單獨處理100位數字的算術。

文字處理器:

Python 能夠對任何數據進行分割、累加和總結。它的模塊可以對日誌文件行中的元素進行分割,並根據內置的數據種類對其信息進行記錄和總結,最後才進行輸出。它的規則表達式庫使程序員可以使用 emacs,Perl 等等。 這再次證明 Python 的無所不能,曾經有程序員還利用 Python 編製成非常複雜的 SGML 處理工具。

便捷的應用開發:

Python對程序員而言一目瞭然,用它編程迅速有效。它博大的模塊庫可以提供針對不同協議、工具和庫的接口。免除重新開發之苦。

由於Python 還支持 Tk 工具,所以可以在幾個小時內完成一個應用軟件,而用 Perl 語言可能會需要2到3天,用 C 語言甚至要幾個星期。

跨平臺開發:

Python 以中立方式支持不同的一系列平臺,如果用戶使用的系統包含不同的平臺,使用 Python 開發應用程序則再好不過;它這種適應性也可以爲系統預留使用其它工具的可能。對於頻繁更換平臺用戶,Python 是個理想的選擇。

爲最終用戶提供軟件服務時,Python 也是個備選方案,可以避免同時用不同應用軟件編程的時間和費用。

系統設備

Python旨在避免操作系統中低級部分的滋擾,但如若需要主動進入這些低級部分時也完全可以通過相應的工具和擴充件來實現。與操作系統一樣, Python 可以進入相同的的功能,並予以備份和擴充,而且備份和擴充後的功能會增加 Python 的所有的適應性和接口能力。

互聯網程序設計

Python 帶有的標準模塊可以對網絡插槽進行初級和協議級別的通訊,比如,如果要從 POP 服務器上讀取電子郵件,Python 隨帶的庫模塊可以做到。另外, Python 還支持 XML、HTML和 CGI 庫文件,所以利用它可以解析用戶輸入的需求,並通過網絡服務器產生最佳質量的成果。

程序員還可爲擁有 Python 內置解釋器的 Apache、Unix 和 Windows 網絡服務器編譯模塊。基於 CGI 程序的功效,可以很方便地執行 Python 語句而不用單獨裝載。

數據庫編程

Python 中有無數的擴充模塊可以連接如 Orcle、Informix 、mySOL和PostgreSql等通用的數據庫系統;還有稱作 Gadfly 的工具可以獨立Python 提供完全的SQL環境。Python 有強大的文本和數據處理能力,可以用它作爲不同數據庫間的連接,比起那些數據庫附帶的總結和彙報工具顯得更有優勢。同時,由於它支持不同系統,用同樣的接口也可以連接任何數據庫。可以用 Tk 在支持平臺上建立前端,馬上就可獲得高速跨平臺、獨立數據庫的查詢工具。

其它

Python 應用範圍廣泛,幾乎沒有它不適配的語言;憑籍它的微小內核、豐富功能、多樣數據,Python 提供了一個良好的程序構建基礎。綜合了C 和 C++二者的優點,只要採用合適的結構和方式,便可對 Python 程序進行無限的擴充。除了一大堆顯著的優點,Python 也有缺點。

要列出 Python 的缺點確實不太容易。Python 在其擴充模塊中提供了大部分的功能,並充分顯示了對其增加功能有多容易,一旦用它還不能解決問題,那麼也僅需要利用 C 或 C++ 語言重新編寫一個擴充程序便可。

批評 Python 的人往往不是說Python 缺乏某種功能,而是對這種功能並不瞭解。通常還有一種抱怨說 Python 缺少規則表達式的支持-但實際上有兩個模塊可以用來處理規則表達式,其中之一還可以完全用來支持 Perl 語言的句式句法。對規則表達式的處理並沒有編進該語言中,但並不等於它作不到。

針對 Perl、Rebol 和 Java 語句而言, Python 的優勢在於它的內核很小。這減少了執行的時間,因爲在運行時需要裝載的代碼較少,而且這個特點也使它有着更廣的適應性。

一旦熟悉了 Python 語句的簡明風格,它的強大優勢頓時便會凸現出來。用它編就的程序歷久不衰。

Python 的理想用戶羣

它適合不同類型的用戶以解決不同類型的問題。大部分時候這些問題一般不爲人所知,因爲它們有着較高的保密性。也有大型公司用它進行商用開發,並展示開發所獲的成果。

紅帽 (Red Hat )曾用 Python 和 Tk 一起成功開發配置和管理操作系統的可視界面。整個系統可以全面控制 Linux 操作系統,並根據用戶選擇對配置文件作自動更新。

Infoseek 在其公用搜索引擎使用了Python。該公司還用 Python 對其軟件進行定製,使最終用戶能對該網站內容進行方便下栽。

美國航空航天局也在不少領域中用到 Python 程序語言,最出名的莫過於在任務控制中心將 Python 用於任務計劃;對 Python 在其它方面的使用例如用其計算天體方位和設計衛星的路徑等等都充分體現了 Python 的超強計算能力。

以在“星球大站”、“阿貝斯 (Abyss)”、 “星球之旅 (Star Trek)”、 “印地安那瓊斯 (Indiana Jones)”超級大片中當綱特技和動畫製作的工業光魔公司 (Industrial Light)也採用 Python 製作商業動畫。
本網站提供下載
發佈了9 篇原創文章 · 獲贊 2 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章