溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python如何學(xué)習(xí)(一)

發(fā)布時(shí)間:2020-07-16 18:49:16 來(lái)源:網(wǎng)絡(luò) 閱讀:137 作者:qq5c7d25cdcb961 欄目:編程語(yǔ)言

最近開始整理python的資料,博主建立了一個(gè)qq群,希望給大家提供一個(gè)交流的同平臺(tái) 78486745 。

一、Python是什么

相信混跡IT界的很多朋友都知道,Python是近年來(lái)最火的一個(gè)熱點(diǎn),沒有之一。從性質(zhì)上來(lái)講它和我們熟知的C、java、php等沒有什么本質(zhì)的區(qū)別,也是一種開發(fā)語(yǔ)言,而且已經(jīng)進(jìn)階到主流的二十多種開發(fā)語(yǔ)言的top 3(數(shù)據(jù)源自最新的TIOBE排行榜)。

來(lái)頭不小啊!二十多種主流的開發(fā)語(yǔ)言,我該從哪一個(gè)開始呢?人生苦短,let‘s python!

二、Python的由來(lái)和發(fā)展趨勢(shì)

Python的前世源自鼻祖“龜叔”。1989年,吉多·范羅蘇姆(Guido van Rossum)在阿姆斯特丹為了打發(fā)無(wú)聊的圣誕節(jié),決心開發(fā)一個(gè)新的腳本解釋程序,自此Python和創(chuàng)始人“龜叔”開始進(jìn)入公眾視野。他希望這個(gè)新的叫做Python的語(yǔ)言,能符合他的理想:創(chuàng)造一種C和shell之間,功能全面,易學(xué)易用,可拓展的語(yǔ)言。

1991年,第一個(gè)Python編譯器誕生。它基于C語(yǔ)言實(shí)現(xiàn),并能夠調(diào)用C語(yǔ)言的庫(kù)文件。后面歷經(jīng)版本的不斷換代革新,Python走到了非常具有里程碑意義的一個(gè)節(jié)點(diǎn),即2004的2.4版本誕生了目前最流行的WEB框架Django!六年后Python發(fā)展到2.7版本,這是目前為止2.x版本中最新且較為廣泛使用版本。

2.7版本的誕生不同于以往2.x版本的垂直換代邏輯,它是2.x版本和3.x版本之間過(guò)渡的一個(gè)橋梁,以便最大程度上繼承3.x版本的新特性,同時(shí)盡量保持對(duì)2.x的兼容性。

因此3.x版本在2.7版本之前就已經(jīng)問(wèn)世,從2008年的3.0版本開始,python3.x系呈迅猛發(fā)展之勢(shì),版本更新活躍,一直發(fā)展到現(xiàn)在最新的3.7版本。3.7版本也是目前3.x系列中主流且廣泛使用的版本,后續(xù)相關(guān)程序的demo,默認(rèn)均基于3.7版本展開。

三、Python 2 VS Python 3

許多初學(xué)者會(huì)糾結(jié)于從2.x版本還是3.x版本開始python學(xué)習(xí)之路。這里簡(jiǎn)要對(duì)比下個(gè)人學(xué)習(xí)了解到的兩者的差異:

  • 3.x版本中 PRINT IS A FUNCTION,使用起來(lái)更簡(jiǎn)單方便;
  • 33.x版本中默認(rèn)使用unicode編碼,媽媽再也不用擔(dān)心你的程序編碼問(wèn)題了;
  • 33.x版本中某些庫(kù)進(jìn)行了改名,具體還有待在后續(xù)學(xué)習(xí)中深入展開;
  • 3目前3.x版本還不能完全支持Twisted module,這恐怕是3.x版本中最大的遺憾。也不要過(guò)于糾結(jié)這點(diǎn),據(jù)說(shuō)官方正在彌補(bǔ)這個(gè)不足,同時(shí)也相信能有辦法解決的:)

長(zhǎng)江后浪推前浪,python的未來(lái)是屬于3.x系列的,官方宣布2020年之后不再支持2.x系列中最nb的2.7版本,2.x版本將逐漸壽終正寢,最終被銘刻在開發(fā)語(yǔ)言的豐碑上。
所以學(xué)習(xí)3.x版本沒錯(cuò)的!

四、Python的優(yōu)缺點(diǎn)

二十多種主流開發(fā)語(yǔ)言,python何以能在20多年間以如此迅猛之勢(shì)橫掃七大洲八大洋呢?這都是它自身優(yōu)良的特性決定的.

Python優(yōu)點(diǎn):

  1. “優(yōu)雅”、“明確”、“簡(jiǎn)單”
    這是python的定位,使得python程序看上去簡(jiǎn)單易懂,初學(xué)者容易入門,學(xué)習(xí)成本更低。但隨著學(xué)習(xí)的不但深入,python一樣可以滿足勝任復(fù)雜場(chǎng)景的開發(fā)需求。引用一個(gè)說(shuō)法,Python的哲學(xué)是就是簡(jiǎn)單優(yōu)雅,盡量寫容易看明白的代碼,盡量寫少的代碼。
  2. 開發(fā)效率高
    python作為一種高級(jí)語(yǔ)言,具有豐富的第三方庫(kù),官方庫(kù)中也有相應(yīng)的功能模塊支持,覆蓋了網(wǎng)絡(luò)、文件、GUI、數(shù)據(jù)庫(kù)、文本等大量?jī)?nèi)容。因此開發(fā)者無(wú)需事必躬親,遇到主流的功能需求時(shí)可以直接調(diào)用,在基礎(chǔ)庫(kù)的基礎(chǔ)上施展拳腳,可以節(jié)省你很多功力和時(shí)間成本,大大降低開發(fā)周期。
  3. 無(wú)需關(guān)注底層細(xì)節(jié)
    Python作為一種高級(jí)開發(fā)語(yǔ)言,在編程時(shí)無(wú)需關(guān)注底層細(xì)節(jié)(如內(nèi)存管理等)。
  4. 功能強(qiáng)大
    Python是一種前端后端通吃的綜合性語(yǔ)言,功能強(qiáng)大,php能勝任的角色它都能做,至于后端如何勝任,需要在后續(xù)學(xué)習(xí)中逐步領(lǐng)悟。
  5. 可移植性
    Python可以在多種主流的平臺(tái)上運(yùn)行,開發(fā)程序時(shí)只要繞開對(duì)系統(tǒng)平臺(tái)的依賴性,則可以在無(wú)需修改的前提下運(yùn)行在多種系統(tǒng)平臺(tái)上,具體有待后續(xù)學(xué)習(xí)中深入展開。

一個(gè)硬幣總有兩面,那么Python有缺點(diǎn)嗎?答案是肯定的,總結(jié)如下:

Python缺點(diǎn):

  1. 代碼運(yùn)行速度慢
    因?yàn)镻ython是一種高級(jí)開發(fā)語(yǔ)言,不像c語(yǔ)言一樣可以深入底層硬件最大程度上挖掘榨取硬件的性能,因此它的運(yùn)行速度要遠(yuǎn)遠(yuǎn)慢于c語(yǔ)言。另外一個(gè)原因是,Python是解釋型語(yǔ)言,你的代碼在執(zhí)行時(shí)會(huì)一行一行地翻譯成CPU能理解的機(jī)器碼,這個(gè)翻譯過(guò)程非常耗時(shí),所以很慢。而C程序是運(yùn)行前直接編譯成CPU能執(zhí)行的機(jī)器碼,所以非???。
    但需要注意的是,這種慢對(duì)于不需要追求硬件高性能的應(yīng)用場(chǎng)合來(lái)講根本不是問(wèn)題,因?yàn)樗鼈儽容^的數(shù)量級(jí)根本不是用戶能直觀感受到的!想想程序執(zhí)行所需的時(shí)間數(shù)量級(jí)?例如開發(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秒,用戶體驗(yàn)幾乎沒有差別,除非你用非常精確的計(jì)時(shí)器來(lái)計(jì)時(shí)。

最近開始整理python的資料,博主建立了一個(gè)qq群,希望給大家提供一個(gè)交流的同平臺(tái) 78486745 。

五、Python的適用領(lǐng)域

Python典型的適用領(lǐng)域如下:

  1. 云計(jì)算開發(fā)
    云計(jì)算領(lǐng)域最火的語(yǔ)言,典型代表openstack。
  2. web開發(fā)
    眾多優(yōu)秀的web框架,眾多優(yōu)秀的大型web站點(diǎn)(Youtube,instagrm,豆瓣等)均基于python開發(fā)。
  3. 系統(tǒng)運(yùn)維
    各種自動(dòng)化工具的開發(fā),CMDB、監(jiān)控告警系統(tǒng)、堡壘機(jī)、配置管理&批量分發(fā)工具等均可以搞定。這是自己需要重點(diǎn)學(xué)習(xí)的領(lǐng)域。
  4. 科學(xué)計(jì)算、人工智能
    據(jù)網(wǎng)上了解用于圍棋大戰(zhàn)的谷歌阿發(fā)狗就使用了python開發(fā)(但估計(jì)只是部分而已)。
  5. 圖形GUI處理
    暫時(shí)沒多少體會(huì),后續(xù)領(lǐng)悟吧。
  6. 網(wǎng)絡(luò)爬蟲
    這年頭網(wǎng)絡(luò)爬蟲無(wú)處不在,很多都是基于python開發(fā),包括谷歌的爬蟲。這是爬蟲工程師的必備工具。

六、哪些地方在用Python

來(lái)幾個(gè)鮮活的知名公司應(yīng)用案例,以示敬意:

  • 谷歌:Google app engine、google earth、爬蟲、廣告等
  • Youtube: 世界最大的在線視頻網(wǎng)站基于python開發(fā),好強(qiáng)大
  • Instagram:美國(guó)最大的圖片分享網(wǎng)站,全部基于python開發(fā)
  • facebook:大量的基礎(chǔ)庫(kù)基于python開發(fā)
  • Redhat:yum包管理工具基于python開發(fā)
  • 國(guó)內(nèi)知名互聯(lián)網(wǎng)公司的應(yīng)用:豆瓣、知乎的網(wǎng)站,還有很多主流的互聯(lián)網(wǎng)公司(阿里、騰訊、百度、金山、搜狐、盛大、網(wǎng)易、新浪、網(wǎng)易、果殼、土豆等)通過(guò)python來(lái)完成各種任務(wù)。

【搜索圓方圓,獲得“python教程”,“python下載”,“python入門”類相關(guān)信息?!?/p>

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI