簡(jiǎn)介Python編程語(yǔ)言的歷史發(fā)展
Python編程語(yǔ)言現(xiàn)已在計(jì)算機(jī)語(yǔ)言中被廣泛的應(yīng)用,但是Python編程語(yǔ)言到底是如何而來(lái)的呢?你對(duì)其的歷史有多少的了解呢?如果你對(duì)其剛興趣的話,不妨了瀏覽以下的文章,希望對(duì)你會(huì)有所幫助。
Python 的歷史
Python的創(chuàng)始人為Guido van Rossum。1989年圣誕節(jié)期間,在阿姆斯特丹,Guido為了打發(fā)圣誕節(jié)的無(wú)趣,決心開(kāi)發(fā)一個(gè)新的腳本解釋程序,做為ABC語(yǔ)言的一種繼承。之所以選中Python編程語(yǔ)言(大蟒蛇的意思)作為程序的名字,是因?yàn)樗且粋€(gè)Monty 大蟒蛇飛行馬戲團(tuán)的愛(ài)好者。
ABC是由Guido參加設(shè)計(jì)的一種教學(xué)語(yǔ)言(沒(méi)聽(tīng)說(shuō)過(guò))。就Guido本人看來(lái),ABC這種語(yǔ)言非常優(yōu)美和強(qiáng)大,是專門為非專業(yè)程序員設(shè)計(jì)的。但是ABC語(yǔ)言并沒(méi)有成功,究其原因,Guido認(rèn)為是非開(kāi)放造成的。Guido決心在Python中避免這一錯(cuò)誤(的確如此,Python與其它的語(yǔ)言如C,C++和Java結(jié)合的非常好)。同時(shí),他還想實(shí)現(xiàn)在ABC中閃現(xiàn)過(guò)但未曾實(shí)現(xiàn)的東西。
就這樣,Python在Guido手中誕生了(真要感謝他)。實(shí)際上,***個(gè)實(shí)現(xiàn)是在Mac機(jī)上??梢哉f(shuō),Python是從ABC發(fā)展起來(lái),主要受到了Modula-3(另一種相當(dāng)優(yōu)美且強(qiáng)大的語(yǔ)言,為小型團(tuán)體所設(shè)計(jì)的)的影響。并且結(jié)合了Unix Shell和C的習(xí)慣。
Python 可用在哪些地方
Python可以用在許多場(chǎng)合。當(dāng)你需要大量的動(dòng)態(tài)調(diào)整,要容易使用,功能強(qiáng)大并且富有彈性的情況,Python可以發(fā)揮很好的功效。
在處理文字方面,Python編程語(yǔ)言的核心功能(不需要任何擴(kuò)充庫(kù)的情況下)比別的編程語(yǔ)言更為易用而且速度相當(dāng)。這使Python在需要處理字符串的工作(包括系統(tǒng)管理,CGI編程)上成為高效的語(yǔ)言。
當(dāng)Python加上它的標(biāo)準(zhǔn)擴(kuò)充庫(kù)(如PIL,COM,Numeric,Oracledb,kjbuckets,tkinter,win32api,等等)或是特別擴(kuò)充庫(kù)(你自己寫(xiě)的,或是用SWING做的,或是利用ILU/COBRA/com的)后,它可以變成一個(gè)很好的“膠合語(yǔ)言”或者叫“指導(dǎo)語(yǔ)言”。就是指把不同的編程環(huán)境和互不相關(guān)的軟件功能整合的工具。
例如把Numeric和Oracledb透過(guò)Python結(jié)合起來(lái)你就可以替你的資料庫(kù)數(shù)據(jù)做系統(tǒng)分析。Python的簡(jiǎn)單、易用以及方便而強(qiáng)大的c/c++擴(kuò)展方面使它成為一種十分優(yōu)秀的“膠合語(yǔ)言”。
許多開(kāi)發(fā)人員也在寫(xiě)圖形用戶界面時(shí)廣泛的采用了Python。如果在Windows下,如果想做一個(gè)圖形界面程序,那么Python可以勝任??梢匀xPython.org看一下,它是一個(gè)Python的擴(kuò)展庫(kù),可以用來(lái)實(shí)現(xiàn)跨平臺(tái)的圖形編程,它支持windows和unix/linux。在那個(gè)網(wǎng)站上有一些演示,可以學(xué)習(xí)一下。
Python可以做CGI。有些主頁(yè)提供了對(duì)Python的CGI支持?,F(xiàn)在還有一些用Python做的游戲。如果想了解更多的Python可以做什么,可以去SourceForge上查找有關(guān)Python的項(xiàng)目,上面有很多東西。#t#
運(yùn)行方式
Python可以以命令行方式運(yùn)行,也可以交互式方式運(yùn)行,還具有圖形集成環(huán)境,這樣開(kāi)發(fā)Python就相當(dāng)方便。現(xiàn)在已經(jīng)出現(xiàn)了許多用Python編寫(xiě)的可視化編程軟件,用于實(shí)現(xiàn)象Delphi一樣的功能。
面向?qū)ο?/strong>
Python是一個(gè)真正的面向?qū)ο笳Z(yǔ)言。它甚至支持異常的處理。如果學(xué)過(guò)Java,應(yīng)該對(duì)這個(gè)不陌生。但其它的腳本語(yǔ)言,如PHP,好象就沒(méi)有。這使得程序的編寫(xiě)更加清晰,而不需要許多的錯(cuò)誤檢查了。
模塊和包
這一點(diǎn)更象是Java。對(duì)于Java的支持,大家可以了解JPython。JPython是用Java寫(xiě)的Python編程語(yǔ)言,它完全支持Java,在這個(gè)環(huán)境下使用Python可以隨意地使用Java的類庫(kù)。語(yǔ)言擴(kuò)展可以用C、C++或Java為Python編寫(xiě)新的新言模塊,如函數(shù)?;蛘吲cPython直接編譯在一起,或者采用動(dòng)態(tài)庫(kù)裝入方式實(shí)現(xiàn)。
也專門有人編寫(xiě)了一個(gè)工具,可以實(shí)現(xiàn)為Python自動(dòng)實(shí)現(xiàn)函數(shù)接口封裝,這就是SWIG(Simplified Wrapper and Interface Generator),或稱做簡(jiǎn)單封裝和接口生成器。
有趣的語(yǔ)法
Guido認(rèn)為Python編程語(yǔ)言的語(yǔ)法是非常優(yōu)美的。其中一點(diǎn)就是,塊語(yǔ)句的表示不是C語(yǔ)言常用的{}對(duì),或其它符號(hào)對(duì),而是采用縮近表示法!有趣吧。就這一點(diǎn)來(lái)說(shuō),Guido的解釋是:首先,使用縮近表示法減少了視覺(jué)上的混亂,并且使程序變短,這樣就減少了需要對(duì)基本代碼單元注意的范圍;
其次,它減少了程序員的自由度,更有利于統(tǒng)一風(fēng)格,使得閱讀別人的程序更容易。感覺(jué)還是不錯(cuò)的,就C語(yǔ)言來(lái)說(shuō),在if語(yǔ)句后面大括號(hào)的寫(xiě)法就好幾種,不同的人喜歡不同的樣子,還不如統(tǒng)一起來(lái),都不會(huì)看得別扭。
在每個(gè)類或函數(shù)的定義后面,***行可以是說(shuō)明語(yǔ)句,根本不需要注釋符標(biāo)記。對(duì)于后面跟塊語(yǔ)句的語(yǔ)句,后面應(yīng)跟上一個(gè)冒號(hào)。一行語(yǔ)句不能太長(zhǎng),因?yàn)闆](méi)有行結(jié)束符,如果超長(zhǎng)則要使用續(xù)行符(\)。還有一些有趣的比如說(shuō),象下面的一個(gè)比較處理,用C語(yǔ)言為:
- if (2<a&&a<5)
以上文章就是對(duì)Python編程語(yǔ)言相關(guān)內(nèi)容的詳細(xì)介紹。