十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
Python(發(fā)音:[ 'paiθ(?)n; (US) 'paiθ?n ]),是一種面向?qū)ο蟮慕忉屝缘挠?jì)算機(jī)程序設(shè)計(jì)語言,也是一種功能強(qiáng)大而完善的通用型語言,已經(jīng)具有十多年的發(fā)展歷史,成熟且穩(wěn)定。Python 具有腳本語言中最豐富和強(qiáng)大的類庫,足以支持絕大多數(shù)日常應(yīng)用。
創(chuàng)新互聯(lián)公司專注于白城企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),成都做商城網(wǎng)站。白城網(wǎng)站建設(shè)公司,為白城等地區(qū)提供建站服務(wù)。全流程按需制作網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
這種語言具有非常簡捷而清晰的語法特點(diǎn),適合完成各種高層任務(wù),幾乎可以在所有的操作系統(tǒng)中運(yùn)行。
目前,基于這種語言的相關(guān)技術(shù)正在飛速的發(fā)展,用戶數(shù)量急劇擴(kuò)大,相關(guān)的資源非常多。
Python的Hello World程序
下面是一個(gè)在標(biāo)準(zhǔn)輸出設(shè)備上輸出Hello World的簡單程序,這種程序通常作為開始學(xué)習(xí)編程語言時(shí)的第一個(gè)程序:
#!/usr/bin/env python
print "Hello, world!"
Python的歷史
Python的創(chuàng)始人為Guido van Rossum。1989年圣誕節(jié)期間,在阿姆斯特丹,Guido為了打發(fā)圣誕節(jié)的無趣,決心開發(fā)一個(gè)新的腳本解釋程序,做為 ABC 語言的一種繼承。之所以選中 Python(大蟒蛇的意思)作為程序的名字,是因?yàn)樗且粋€(gè)Monty Python的飛行馬戲團(tuán)的愛好者。
ABC是由Guido參加設(shè)計(jì)的一種教學(xué)語言。就Guido本人看來,ABC 這種語言非常優(yōu)美和強(qiáng)大,是專門為非專業(yè)程序員設(shè)計(jì)的。但是ABC語言并沒有成功,究其原因,Guido 認(rèn)為是非開放造成的。Guido 決心在 Python 中避免這一錯(cuò)誤(的確如此,Python 與其它的語言如C、C++和Java結(jié)合的非常好)。同時(shí),他還想實(shí)現(xiàn)在 ABC 中閃現(xiàn)過但未曾實(shí)現(xiàn)的東西。
就這樣,Python在Guido手中誕生了。實(shí)際上,第一個(gè)實(shí)現(xiàn)是在Mac機(jī)上??梢哉f,Python是從ABC發(fā)展起來,主要受到了Modula-3(另一種相當(dāng)優(yōu)美且強(qiáng)大的語言,為小型團(tuán)體所設(shè)計(jì)的)的影響。并且結(jié)合了Unix shell和C的習(xí)慣。
Python在編程語言中的定位
雖然 Python 可能被粗略地分類為"腳本語言(scripting language)", 實(shí)際上一些大規(guī)模軟件開發(fā)計(jì)劃例如 Zope, Mnet 及 BitTorrent. Google也廣泛地使用它。 Python 的支持者較喜歡稱它為一種高階動(dòng)態(tài)編程語言 , 原因是"腳本語言" 泛指單用作簡單編程任務(wù)如 shell scripts ,而Python不能與JavaScript等只能處理簡單任務(wù)的編程語言相提并論。
Python的特色
可擴(kuò)充性可說是Python作為一種編程語言的特色。新的內(nèi)置模塊(module)可以用C 或 C++寫成。而我們也可為現(xiàn)成的模塊加上Python的接口。Python可以使用戶避免過分的語法的羈絆而將精力主要集中到所要實(shí)現(xiàn)的程序任務(wù)上。
Python也被稱為是一門清晰的語言。因?yàn)樗淖髡咴谠O(shè)計(jì)它的時(shí)候,總的指導(dǎo)思想是,對(duì)于一個(gè)特定的問題,只要有一種最好的方法來解決就好了。這在由Tim Peters寫的python格言(稱為The Zen of Python)里面表述為:
There should be one-- and preferably only one --obvious way to do it.
有意思的是,這正好和Perl語言(另一種功能類似的高級(jí)動(dòng)態(tài)語言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。這似乎是人們常把Perl和Python互相比較的重要原因。
Python語言是一種清晰的語言的另一個(gè)意思是,它的作者有意的設(shè)計(jì)限制性很強(qiáng)的語法,使得不好的編程習(xí)慣(例如if語句的下一行不向右縮進(jìn))都不能通過編譯。這樣有意的強(qiáng)制程序員養(yǎng)成良好的編程習(xí)慣。其中很重要的一項(xiàng)就是Python的縮進(jìn)規(guī)則。
例如if語句:
if age21:
print "You cannot buy wine!\n"
print "But you can buy chewing gum.\n"
print "this is outside if\n"
一個(gè)和其他大多數(shù)語言(如C)的區(qū)別就是,一個(gè)模塊的界限,完全是由每行的首字符在這一行的位置來決定的(而C語言是用一對(duì)花括號(hào){}來明確的定出模塊的邊界的,與字符的位置毫無關(guān)系)。這一點(diǎn)曾經(jīng)引起過爭議。因?yàn)樽詮腃這類的語言誕生后,語言的語法含義與字符的排列方式分離開來,曾經(jīng)被認(rèn)為是一種程序語言的進(jìn)步。不過不可否認(rèn)的是,通過強(qiáng)制程序員們縮進(jìn)(包括if,for和函數(shù)定義等所有需要使用模塊的地方),Python確實(shí)使得程序更加清晰和美觀。
另外Python在其他部分的設(shè)計(jì)上也堅(jiān)持了清晰劃一的風(fēng)格,這使得Python稱為一門易讀性、易維護(hù)性好,并且被大量用戶所歡迎的、用途廣泛的語言。
Python的局限
雖然Python是一個(gè)非常成功的語言,但是也有必要明白它的局限性。
1. 運(yùn)行效率低下
目前為止,Python可以說是所有主流腳本語言中速度最慢的。這與其腳本引擎的設(shè)計(jì)思路有關(guān)。
如果你的應(yīng)用對(duì)于速度有著較高的要求,就要考慮Python是否能滿足需要。不過這一點(diǎn)可以通
過使用C編寫關(guān)鍵模塊,然后由Python調(diào)用的方式加以部分解決。
2. 多線程支持欠佳
Python支持多線程,但是其運(yùn)行效率也不高。
3. 獨(dú)特的語法
這也許不應(yīng)該被稱為局限,但是它用縮進(jìn)來區(qū)分語句關(guān)系的方式還是給很多初學(xué)者帶來了困惑。
即便是很有經(jīng)驗(yàn)的Python程序員,也可能陷入陷阱當(dāng)中。最常見的情況是tab和空格的混用會(huì)導(dǎo)
致錯(cuò)誤,而這是用肉眼無法分別的。
4. 無類型
作為一種動(dòng)態(tài)語言,隨時(shí)隨地創(chuàng)建和使用變量是Python給我們帶來的巨大的便利。但是它也會(huì)
使得程序不嚴(yán)謹(jǐn),某些錯(cuò)誤只有在運(yùn)行中才可能出現(xiàn)。所以,使用Python編程的時(shí)候,要對(duì)類
型做到心里有數(shù)。這也使得Python的IDE工具無法提供便利的自動(dòng)完成等功能。
Python的前景
Python在編程領(lǐng)域的占有率一直處于穩(wěn)步上升之中,根據(jù)最新的數(shù)據(jù),Python排名第七。前六名分別是Java,
C,VB,C++,PHP和Perl. 作為一個(gè)很年輕的語言,Python的位置已經(jīng)相當(dāng)令人振奮了。隨著微軟將Python納入
.Net 平臺(tái),相信Python的將來會(huì)更加強(qiáng)勁發(fā)展。Python 很可能會(huì)成為.Net平臺(tái)快速開發(fā)的主流語言。
欲了解這方面情況,請(qǐng)參考Iron Python的相關(guān)信息.
著名的搜索引擎 Google 也大量使用Python。
Python的應(yīng)用
Zope-應(yīng)用服務(wù)器
Plone-內(nèi)容管理系統(tǒng)
Django-鼓勵(lì)快速開發(fā)的web framework
Twisted - Python Network Application Framework Python的網(wǎng)絡(luò)應(yīng)用程序框架
TurboGears - 另一個(gè)Web應(yīng)用快速開發(fā)框架
Bit Torrent - 著名的BT下載工具
2006年的Google編程大賽已經(jīng)將Python作為參賽語言之一
C
n.
1. 英語字母中的第三個(gè)字母,小寫為c
2. (用大寫C)丙等(成績)
c
KK: []
DJ: []
n.
1. 英語字母的第三個(gè)字母
2. (用大寫)丙等(成績)
音符之一
物理上C表電容
C語言簡介
作者:歐索軟件 文章來源:本站原創(chuàng) 點(diǎn)擊數(shù):179 更新時(shí)間:2005-11-17
C語言是目前世界上流行、使用最廣泛的高級(jí)程序設(shè)計(jì)語言之一。
C語言對(duì)操作系統(tǒng)和系統(tǒng)使用程序以及需要對(duì)硬件進(jìn)行操作的場合,用C語言明顯優(yōu)于其它高級(jí)語言,許多大型應(yīng)用軟件都是用C語言編寫的。
C語言具有繪圖能力強(qiáng),可移植性,并具備很強(qiáng)的數(shù)據(jù)處理能力,因此適于編寫系統(tǒng)軟件,三維,二維圖形和動(dòng)畫,它是數(shù)值計(jì)算的高級(jí)語言。
常用編譯軟件有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++, Borland C++ Builder,Turbo C,等等......
一、C語言的發(fā)展歷史
C語言的發(fā)展頗為有趣。它的原型ALGOL 60語言。
1963年,劍橋大學(xué)將ALGOL 60語言發(fā)展成為CPL(Combined Programming Language)語言。
1967年,劍橋大學(xué)的Matin Richards 對(duì)CPL語言進(jìn)行了簡化,于是產(chǎn)生了BCPL語言。
1970年,美國貝爾實(shí)驗(yàn)室的Ken Thompson將BCPL進(jìn)行了修改,并為它起了一個(gè)有趣的名字“B語言”。意思是將CPL語言煮干,提煉出它的精華。并且他用B語言寫了第一個(gè)UNIX操作系統(tǒng)。
而在1973年,B語言也給人“煮”了一下,美國貝爾實(shí)驗(yàn)室的D.M.RITCHIE在B語言的基礎(chǔ)上最終設(shè)計(jì)出了一種新的語言,他取了BGPL的第二個(gè)字母作為這種語言的名字,這就是C語言。
為了使UNIX操作系統(tǒng)推廣,1977年Dennis M.Ritchie 發(fā)表了不依賴于具體機(jī)器系統(tǒng)的C語言編譯文本《可移植的C語言編譯程序》。
1978年Brian W.Kernighian和Dennis M.Ritchie出版了名著《The C Programming Language》,從而使C語言成為目前世界上流行最廣泛的高級(jí)程序設(shè)計(jì)語言。
1988年,隨著微型計(jì)算機(jī)的日益普及, 出現(xiàn)了許多C語言版本。由于沒有統(tǒng)一的標(biāo)準(zhǔn),使得這些C語言之間出現(xiàn)了一些不一致的地方。為了改變這種情況,美國國家標(biāo)準(zhǔn)研究所(ANSI)為C語言制定了一套ANSI標(biāo)準(zhǔn),
成為現(xiàn)行的C語言標(biāo)準(zhǔn) 3.C語言的主要特點(diǎn) 。C語言發(fā)展迅速, 而且成為最受歡迎的語言之一, 主要因?yàn)樗哂袕?qiáng)大的功能。許多著名的系統(tǒng)軟件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 語言編寫的。用C語言加上一些匯編語言子程序, 就更能顯示C語言的優(yōu)勢了,象PC- DOS 、WORDSTAR等就是用這種方法編寫的。
二、C語言的特點(diǎn)
1. 簡潔緊湊、靈活方便
C語言一共只有32個(gè)關(guān)鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示。它把高級(jí)語言的基本結(jié)構(gòu)和語句與低級(jí)語言的實(shí)用性結(jié)合起來。 C 語言可以象匯編語言一樣對(duì)位、字節(jié)和地址進(jìn)行操作, 而這三者是計(jì)算機(jī)最基本的工作單元。
2. 運(yùn)算符豐富
C的運(yùn)算符包含的范圍很廣泛,共有13種34個(gè)運(yùn)算符。C語言把括號(hào)、賦值、強(qiáng)制類型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使C的運(yùn)算類型極其豐富表達(dá)式類型多樣化,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級(jí)語言中難以實(shí)現(xiàn)的運(yùn)算。
3. 數(shù)據(jù)結(jié)構(gòu)豐富
C的數(shù)據(jù)類型有:整型、實(shí)型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型、共用體類型等。能用來實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)類型的運(yùn)算。并引入了指針概念,使程序效率更高。另外C語言具有強(qiáng)大的圖形功能, 支持多種顯示器和驅(qū)動(dòng)器。且計(jì)算功能、邏輯判斷功能強(qiáng)大。
4. C是結(jié)構(gòu)式語言
結(jié)構(gòu)式語言的顯著特點(diǎn)是代碼及數(shù)據(jù)的分隔化,即程序的各個(gè)部分除了必要的信息交流外彼此獨(dú)立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦? 便于使用、維護(hù)以及調(diào)試。C語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。
5. C語法限制不太嚴(yán)格、程序設(shè)計(jì)自由度大
一般的高級(jí)語言語法檢查比較嚴(yán),能夠檢查出幾乎所有的語法錯(cuò)誤。而C語言允許程序編寫者有較大的自由度。
6. C語言允許直接訪問物理地址,可以直接對(duì)硬件進(jìn)行操作
因此既具有高級(jí)語言的功能,又具有低級(jí)語言的許多功能,能夠象匯編語言一樣對(duì)位、字節(jié)和地址進(jìn)行操作,而這三者是計(jì)算機(jī)最基本的工作單元,可以用來寫系統(tǒng)軟件。
7. C語言程序生成代碼質(zhì)量高,程序執(zhí)行效率高
一般只比匯編程序生成的目標(biāo)代碼效率低10へ20%。
8. C語言適用范圍大,可移植性好
C語言有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng), 如DOS、UNIX,也適用于多種機(jī)型
三.C語言的標(biāo)準(zhǔn)
目前主要的C語言規(guī)范有c89(c90), c95(94)和c99。C89是最早的C語言規(guī)范,于89年提出,90年先由美國國家標(biāo)準(zhǔn)局推出ANSI版本,后來被接納為ISO國際標(biāo)準(zhǔn) (ISO/IEC 9899:1990),因而有時(shí)也稱為c90。 但在94和96年分別對(duì)c90進(jìn)行了兩次錯(cuò)誤修正,gcc支持的是修正后的c89(90)版本的C語言規(guī)范。在95年提出過對(duì)90版規(guī)范的修訂案,稱為C95或者AMD1。gcc也支持c95規(guī)范。最新的一次C規(guī)范修訂在99年制定(ISO/IEC 9899:1999),即常稱的C99規(guī)范。在2001年對(duì)C99的錯(cuò)誤進(jìn)行了修正,gcc支持的修正后的c99規(guī)范,但是到目前為止,gcc還沒有完成對(duì)c99規(guī)范的完全支持。
關(guān)于C99標(biāo)準(zhǔn)的一些介紹可以參看下面的網(wǎng)址:
在籃球場上c代表中鋒
中鋒(Center)是一個(gè)球隊(duì)的中心人物,憑借其強(qiáng)壯、高大的身體,無論進(jìn)攻還是防守,他們都是球隊(duì)的樞鈕,故名之為中鋒。
作為禁區(qū)內(nèi)的“擎天柱”,搶籃板球是中鋒必不可少的能力。此外,封堵阻攻、蓋帽也是中鋒必備的能力。由于本隊(duì)進(jìn)攻時(shí)自己常處在禁區(qū)中央的樞紐位置,所以中鋒應(yīng)該具有不錯(cuò)的導(dǎo)球能力,能將球往較合適的位置輸送,助攻隊(duì)友得分。以上三項(xiàng),是中鋒應(yīng)具備的基礎(chǔ)技能。當(dāng)然,得分也是中鋒應(yīng)盡的職責(zé),他們是主要的內(nèi)線得分者。中鋒的命中率應(yīng)該比大前鋒更高一些。
一名好的中鋒必須多才多藝,不但要有足夠的得分技巧用于進(jìn)攻得分,防守時(shí)還要能成為球隊(duì)的最后一道屏障,除了守好自己盯防的球員,中鋒還要能夠協(xié)同協(xié)同和及時(shí)為隊(duì)友的防守補(bǔ)位。
現(xiàn)代籃球打法中有一種新的中鋒戰(zhàn)術(shù),就是所謂的“外線中鋒”。此種中鋒需要在進(jìn)攻時(shí)主要到外線投籃得分,而少做禁區(qū)內(nèi)的進(jìn)攻。由于用其他球員防守身材上差異太大、效果不佳,因此防守方只能讓本隊(duì)中鋒也到外線去盯防對(duì)手。如此一來,進(jìn)攻方就可以利用對(duì)方中鋒不在禁區(qū)的機(jī)會(huì),讓本隊(duì)能力強(qiáng)的前鋒或后衛(wèi)隊(duì)員瘋狂得分。當(dāng)然,“外線中鋒”只適用于進(jìn)攻,防守時(shí)與一般中鋒的打法無異。
Perl(Practical Extraction and Report Language)是一種腳本語言。
Perl最初的設(shè)計(jì)者為拉里·沃爾(Larry Wall),它于1987年12月18日發(fā)表。Perl借取了C、sed、awk、shell scripting以及很多其他程序語言的特性。
Perl的正式網(wǎng)站是 。
Perl的解釋程序是開放源碼的免費(fèi)軟件,使用Perl不必?fù)?dān)心費(fèi)用。Perl能在絕大多數(shù)操作系統(tǒng)運(yùn)行,可以方便地向不同操作系統(tǒng)遷移。
Perl擅長從文本文件里提取數(shù)據(jù)并處理、輸出(這也是它名字的來由),并且提供模塊滿足各種專門的功能(例如CGI、數(shù)據(jù)庫)。
Perl目前最廣泛的應(yīng)用包括:操作系統(tǒng)管理,網(wǎng)絡(luò)程序(Perl基本成為了CGI的代名詞),DNA分析。
LISP
在只給定幾個(gè)簡單的操作符和一個(gè)表示函數(shù)的記號(hào)的基礎(chǔ)上, 如何構(gòu)造出一個(gè)完整的編程語言. 麥卡錫稱這種語言為Lisp, 意為List Processing, 因?yàn)樗闹饕枷胫皇怯靡环N簡單的數(shù)據(jù)結(jié)構(gòu)表(list)來代表代碼和數(shù)據(jù).
1959年,麥卡錫基于阿隆索·邱奇的l-演算和西蒙、紐厄爾首創(chuàng)的“表結(jié)構(gòu)”,開發(fā)了著名的LISP語言,成為人工智能界第一個(gè)最廣泛流行的語言。LISP是一種函數(shù)式的符號(hào)處理語言,其程序由一些函數(shù)子程序組成。在函數(shù)的構(gòu)造上,和數(shù)學(xué)上遞歸函數(shù)的構(gòu)造方法十分類似,即從幾個(gè)基本函數(shù)出發(fā),通過一定的手段構(gòu)成新的函數(shù)。LISP語言還具有自編譯能力。具體說來,LISP有以下幾個(gè)主要特點(diǎn):
1. 計(jì)算用的是符號(hào)表達(dá)式而不是數(shù);
2.具有表處理能力,即用鏈表形式表示所有的數(shù)據(jù);
3.控制結(jié)構(gòu)基于函數(shù)的復(fù)合,以形成更復(fù)雜的函數(shù);
4.用遞歸作為描述問題和過程的方法;
5.用LISP語言書寫的EVAL函數(shù)既可作為LISP語言的解釋程序,又可以作為語言本身的形式定義;
6.程序本身也同所有其他數(shù)據(jù)一樣用表結(jié)構(gòu)形式表示。
已經(jīng)證明,LISP的這些特點(diǎn)是解決人工智能核心問題的關(guān)鍵。此外,精巧的表機(jī)制也是進(jìn)一步簡化LISP程序設(shè)計(jì)的方便而有力的工具,因此,LISP自發(fā)明以來,已經(jīng)被廣泛用于數(shù)學(xué)中的符號(hào)微積分計(jì)算,定理證明,謂詞演算,博奕論等領(lǐng)域。它和后來由英國倫敦大學(xué)的青年學(xué)生柯瓦提出、由法國馬賽大學(xué)的考爾麥勞厄所領(lǐng)導(dǎo)的研究小組于1973年首先實(shí)現(xiàn)的邏輯式語言PROLOG并稱為人工智能的兩大語言,對(duì)人工智能的發(fā)展起了十分深遠(yuǎn)的影響。LISP所蘊(yùn)含的豐富的思想和深刻的意義也吸引了負(fù)責(zé)設(shè)計(jì)Algol語言的國際委員會(huì),麥卡錫因此而被吸收為該委員會(huì)的成員。Algol中后來采納了LISP關(guān)于遞歸和條件表達(dá)式這些思想。
如果只是這幾個(gè)的話還簡單點(diǎn),如果要適應(yīng)所有這個(gè)lisp的語法那蠻復(fù)雜的,要用棧來做