python語(yǔ)言初認(rèn)識(shí)——1:Python簡(jiǎn)介

1:Python的誕生:

Python是著名的“龜叔”Guido van Rossum在1989年圣誕節(jié)期間,為了打發(fā)無聊的圣誕節(jié)而編寫的一個(gè)編程語(yǔ)言。

2:Python與c語(yǔ)言:

C語(yǔ)言是可以用來編寫操作系統(tǒng)的貼近硬件的語(yǔ)言,所以,C語(yǔ)言適合開發(fā)那些追求運(yùn)行速度、充分發(fā)揮硬件性能的程序。而Python是用來編寫應(yīng)用程序的高級(jí)編程語(yǔ)言。

3:Python和基礎(chǔ)代碼庫(kù):

當(dāng)你用一種語(yǔ)言開始作真正的軟件開發(fā)時(shí),你除了編寫代碼外,還需要很多基本的已經(jīng)寫好的現(xiàn)成的東西,來幫助你加快開發(fā)進(jìn)度。比如說,要編寫一個(gè)電子郵件客戶端,如果先從最底層開始編寫網(wǎng)絡(luò)協(xié)議相關(guān)的代碼,那估計(jì)一年半載也開發(fā)不出來。高級(jí)編程語(yǔ)言通常都會(huì)提供一個(gè)比較完善的基礎(chǔ)代碼庫(kù),讓你能直接調(diào)用,比如,針對(duì)電子郵件協(xié)議的SMTP庫(kù),針對(duì)桌面環(huán)境的GUI庫(kù),在這些已有的代碼庫(kù)的基礎(chǔ)上開發(fā),一個(gè)電子郵件客戶端幾天就能開發(fā)出來。

Python就為我們提供了非常完善的基礎(chǔ)代碼庫(kù),覆蓋了網(wǎng)絡(luò)、文件、GUI、數(shù)據(jù)庫(kù)、文本等大量?jī)?nèi)容,被形象地稱作“內(nèi)置電池(batteries included)”。用Python開發(fā),許多功能不必從零編寫,直接使用現(xiàn)成的即可。

除了內(nèi)置的庫(kù)外,Python還有大量的第三方庫(kù),也就是別人開發(fā)的,供你直接使用的東西。當(dāng)然,如果你開發(fā)的代碼通過很好的封裝,也可以作為第三方庫(kù)給別人使用。

4:python的戰(zhàn)績(jī):

許多大型網(wǎng)站就是用Python開發(fā)的,例如YouTube、Instagram,還有國(guó)內(nèi)的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美國(guó)航空航天局)都大量地使用Python。

5:龜叔給Python的定位是“優(yōu)雅”、“明確”、“簡(jiǎn)單”。初學(xué)者學(xué)Python,不但入門容易,而且將來深入下去,可以編寫那些非常非常復(fù)雜的程序。如果一個(gè)資深程序員向你炫耀他寫的晦澀難懂、動(dòng)不動(dòng)就幾萬行的代碼,你可以盡情地嘲笑他。

6:那Python適合開發(fā)哪些類型的應(yīng)用呢?

(1)是網(wǎng)絡(luò)應(yīng)用,包括網(wǎng)站、后臺(tái)服務(wù)等等;

(2)是許多日常需要的小工具,包括系統(tǒng)管理員需要的腳本任務(wù)等等;

(3)就是把其他語(yǔ)言開發(fā)的程序再包裝起來,方便使用。

7:Python的缺點(diǎn):

(1)運(yùn)行速度慢:和C程序相比非常慢,因?yàn)镻ython是解釋型語(yǔ)言,你的代碼在執(zhí)行時(shí)會(huì)一行一行地翻譯成CPU能理解的機(jī)器碼,這個(gè)翻譯過程非常耗時(shí),所以很慢。而C程序是運(yùn)行前直接編譯成CPU能執(zhí)行的機(jī)器碼,所以非???。

但是大量的應(yīng)用程序不需要這么快的運(yùn)行速度,因?yàn)橛脩舾靖杏X不出來。例如開發(fā)一個(gè)下載MP3的網(wǎng)絡(luò)應(yīng)用程序,C程序的運(yùn)行時(shí)間需要0.001秒,而Python程序的運(yùn)行時(shí)間需要0.1秒,慢了100倍,但由于網(wǎng)絡(luò)更慢,需要等待1秒,你想,用戶能感覺到1.001秒和1.1秒的區(qū)別嗎?這就好比F1賽車和普通的出租車在北京三環(huán)路上行駛的道理一樣,雖然F1賽車?yán)碚摃r(shí)速高達(dá)400公里,但由于三環(huán)路堵車的時(shí)速只有20公里,因此,作為乘客,你感覺的時(shí)速永遠(yuǎn)是20公里。

第二個(gè)缺點(diǎn)就是代碼不能加密。如果要發(fā)布你的Python程序,實(shí)際上就是發(fā)布源代碼,這一點(diǎn)跟C語(yǔ)言不同,C語(yǔ)言不用發(fā)布源代碼,只需要把編譯后的機(jī)器碼(也就是你在Windows上常見的xxx.exe文件)發(fā)布出去。要從機(jī)器碼反推出C代碼是不可能的,所以,凡是編譯型的語(yǔ)言,都沒有這個(gè)問題,而解釋型的語(yǔ)言,則必須把源碼發(fā)布出去。

這個(gè)缺點(diǎn)僅限于你要編寫的軟件需要賣給別人掙錢的時(shí)候。好消息是目前的互聯(lián)網(wǎng)時(shí)代,靠賣軟件授權(quán)的商業(yè)模式越來越少了,靠網(wǎng)站和移動(dòng)應(yīng)用賣服務(wù)的模式越來越多了,后一種模式不需要把源碼給別人。

再說了,現(xiàn)在如火如荼的開源運(yùn)動(dòng)和互聯(lián)網(wǎng)自由開放的精神是一致的,互聯(lián)網(wǎng)上有無數(shù)非常優(yōu)秀的像Linux一樣的開源代碼,我們千萬不要高估自己寫的代碼真的有非常大的“商業(yè)價(jià)值”。那些大公司的代碼不愿意開放的更重要的原因是代碼寫得太爛了,一旦開源,就沒人敢用他們的產(chǎn)品了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 姓名:張坤 學(xué)號(hào):1700030080 轉(zhuǎn)載自:https://www.cnblogs.com/chenwolo...
    0bserver閱讀 857評(píng)論 0 0
  • 這是加入小能熊讀書小組后的第二篇讀書筆記。《和時(shí)間做朋友》這本書,并沒有大篇幅地介紹時(shí)間管理的技巧,而是從認(rèn)知層面...
    Cecilia1128閱讀 406評(píng)論 0 0
  • 睡覺是生活中不可缺少的事情,而做夢(mèng)就是睡覺中的小插曲,有好夢(mèng),有噩夢(mèng),有笑夢(mèng),有哭夢(mèng)等等,甚至一個(gè)小孩子都會(huì)跟...
    愛鳳兒閱讀 708評(píng)論 0 1
  • 「這是最好的時(shí)代,也是最壞的時(shí)代…」—— 狄更斯《雙城記》 首先我要向黨國(guó)坦白,《雙城記》我一個(gè)字都沒看過。下面我...
    1PM閱讀 342評(píng)論 0 0
  • 回去了就不想走 回來了又不想去 我與老家的這種距離 讓人有一種擔(dān)憂 ——死無葬身之地 不是故意而為 田塊里的草我真...
    唯美看點(diǎn)閱讀 128評(píng)論 0 1

友情鏈接更多精彩內(nèi)容