? ? 目前Python有兩個(gè)版本:Python2.x和Python3.x,要知道杖玲,這兩個(gè)版本并不兼容秦爆,后者比前者多了很多特性撞牢,語(yǔ)法也有所不同,目前Python2.x已經(jīng)停止更新了蜻势,所以我們直接學(xué)習(xí)Python3撑刺,有使用Python2寫(xiě)的項(xiàng)目還可以繼續(xù)用,而且還有類(lèi)似Python2to3的轉(zhuǎn)化工具等握玛。
? ? 關(guān)于Python够傍,如果想非常全面的了解,內(nèi)容還是不少的败许,這里我把它的一些重要特性提取出來(lái)進(jìn)行講解王带,總統(tǒng)為以下幾點(diǎn):
1.解釋性語(yǔ)言
? ? 我們知道,計(jì)算機(jī)語(yǔ)言可分為編譯性語(yǔ)言和解釋性語(yǔ)言市殷,前者如匯編愕撰、C、C++等醋寝,程序在執(zhí)行前需要使用編譯器翻譯成最終能在機(jī)器上執(zhí)行的0和1組成的機(jī)器碼搞挣,然后由CPU依次執(zhí)行;而后者音羞,需要事先有一個(gè)解釋器囱桨,說(shuō)白了就是翻譯官,你只需把寫(xiě)好的程序交給它嗅绰,由這個(gè)解釋器支逐條翻譯成計(jì)算機(jī)能理解的指令然后去執(zhí)行舍肠,我們正在學(xué)的Python語(yǔ)言就是一種解釋性的語(yǔ)言,類(lèi)似的語(yǔ)言還有Java窘面、Perl等翠语。
2.交互式語(yǔ)言
? ? 理解了什么是解釋性語(yǔ)言,就能很好的理解交互式财边,所謂交互式肌括,就是用戶可以跟計(jì)算機(jī)進(jìn)行交流,用戶“說(shuō)”一句酣难,計(jì)算機(jī)執(zhí)行一句谍夭,用戶在終端(Windows系統(tǒng)下的cmd命令行)輸入想做的事情黑滴,比如文件copy的動(dòng)作,按回車(chē)后紧索,計(jì)算機(jī)就去執(zhí)行袁辈。Python也是一種交互式語(yǔ)言,可以像批處理語(yǔ)言一樣齐板,通過(guò)終端與計(jì)算機(jī)"talk"吵瞻。
3.面向?qū)ο笳Z(yǔ)言
回顧編程語(yǔ)言的歷史,有面向過(guò)程的甘磨,如C語(yǔ)言,還有面向?qū)ο蟮拿型#鏑++济舆、Java、Python等莺债,所謂面向什么滋觉,說(shuō)白了你可以理解成程序員在寫(xiě)代碼時(shí),腦子里面想象的內(nèi)容齐邦。比如要實(shí)現(xiàn)把大象放冰箱椎侠,如果用面向過(guò)程的程序設(shè)計(jì)邏輯,那就是第一步措拇,打開(kāi)冰箱門(mén)我纪,第二步,開(kāi)吊車(chē)搬大象往里放...丐吓,如果用面向?qū)ο蟪绦蛟O(shè)計(jì)浅悉,那就是有一個(gè)類(lèi)中的方法,該方法實(shí)現(xiàn)了把大象放冰箱的功能券犁,然后我們調(diào)用這個(gè)類(lèi)方法术健。
4.源碼開(kāi)放
Python語(yǔ)言的源碼是開(kāi)放的,包括它的各種模塊的實(shí)現(xiàn)粘衬,如果你有興趣荞估,可以好好研究一下,源碼在github上都能找到稚新。世界上好多偉大的項(xiàng)目都是開(kāi)源的勘伺,比如Linux、tensorflow框架等枷莉,正是由于開(kāi)源娇昙,才有更多的人才投入到項(xiàng)目的繼續(xù)開(kāi)發(fā)中,為項(xiàng)目的不斷創(chuàng)新增加動(dòng)力笤妙。
5.移植性強(qiáng)
? 這個(gè)也很好理解冒掌,上面已經(jīng)說(shuō)了噪裕,Python運(yùn)行環(huán)境中有Python解釋器,所有的Python腳本得以運(yùn)行正是由于這個(gè)解釋器在工作股毫,解釋器抽象了不同機(jī)器底層硬件膳音,使上層用戶專(zhuān)心于其程序邏輯設(shè)計(jì)。目前Python安裝包有三個(gè)版本:Windows版铃诬、Linux版祭陷、Mac/OS版,不同設(shè)備只要安裝好了對(duì)應(yīng)的python執(zhí)行環(huán)境趣席,可謂是代碼一處編寫(xiě)兵志,到處運(yùn)行。同時(shí)這里再說(shuō)一下解釋?zhuān)W(wǎng)上有人說(shuō)Python語(yǔ)言效率低宣肚,這個(gè)問(wèn)題我覺(jué)得看你怎么理解了想罕,Python語(yǔ)言其實(shí)其底層調(diào)用了大量的C庫(kù),跟C比霉涨,效率肯定是差一點(diǎn)按价,腳本語(yǔ)言效率本身就不會(huì)很高,但效率高不高在乎開(kāi)發(fā)者的框架是什么以及優(yōu)化的程度笙瑟,舉個(gè)例子楼镐,python提供的用于科學(xué)計(jì)算numpy庫(kù)里的函數(shù)效率就非常高,但如果你就是用python實(shí)現(xiàn)矩陣乘矩陣往枷,那肯定效率不高框产。
? 說(shuō)了這么多,其實(shí)我們只需要知道Python語(yǔ)言用的比較多师溅,使用很簡(jiǎn)單就行了茅信,正是由于一大批的科學(xué)家、計(jì)算機(jī)學(xué)家墓臭、數(shù)學(xué)家們的努力投入蘸鲸,造就了python簡(jiǎn)潔好用的特點(diǎn),我們相當(dāng)于是站在巨人的肩膀上搞開(kāi)發(fā)窿锉,輪子已經(jīng)造好了酌摇,我們只需要按自己的需求拿過(guò)來(lái)使用,完成我們要的功能即可嗡载。今天就為大家講解到這里窑多,后面章節(jié)會(huì)順次進(jìn)入python的學(xué)習(xí)實(shí)踐。