今天給大家分享一位前輩自學(xué)Python的過程。當(dāng)然,他自己本身就有編程基礎(chǔ),與完全沒基礎(chǔ)的小白不可同日而語。大家可以相對(duì)借鑒一下他的學(xué)習(xí)方法,如果是純小白入門,還是需要老師帶領(lǐng)學(xué)習(xí)。
最初了解python語言是由于2016年一次出差,以前是在C語言的硬件坑里耍。當(dāng)時(shí)一位同事,用python語言仿真模擬了一個(gè)實(shí)際的不可描述的工作場(chǎng)景,覺得很有意思。
當(dāng)時(shí)就是基于簡(jiǎn)單的Turtle工具進(jìn)行畫圖,動(dòng)態(tài)的展現(xiàn)出來?;貋砗?,一直想學(xué)習(xí)這門語言但是一直沒動(dòng)手,一方面,是由于工作原因;另一方面,還沒想好是不是要學(xué)習(xí),態(tài)度還不夠堅(jiān)決。
去年年底,在一個(gè)學(xué)習(xí)群里,一位群友發(fā)了一個(gè)使用Python語言編寫的12306網(wǎng)站搶票程序,發(fā)現(xiàn)這個(gè)語言還有點(diǎn)意思,就仔細(xì)研究了下;
最初感覺這個(gè)語言有這樣幾個(gè)特點(diǎn):
1、語法規(guī)則簡(jiǎn)單,對(duì)程序編寫人員的限制不大(但是語法真的不簡(jiǎn)單,由于是動(dòng)態(tài)語言,內(nèi)部的運(yùn)行機(jī)制更復(fù)雜);
2、第三方庫(kù)多,當(dāng)時(shí)還不知道爬蟲是啥,只知道,調(diào)用這么寫API,就把事情給辦了,還不錯(cuò)。3、場(chǎng)景適應(yīng)性強(qiáng),只要有包,有庫(kù),有IDE,甚至只要打包好,在任何系統(tǒng)都可以運(yùn)行。所以,今年開始認(rèn)真學(xué)習(xí)這門語言。
學(xué)習(xí)過程中,買了很多書,如:《python學(xué)習(xí)手冊(cè)》、《流暢的python》、《笨辦法學(xué)python3》、《貝葉斯思維-基于python的統(tǒng)計(jì)學(xué)習(xí)》等等,特別是對(duì)《python學(xué)習(xí)手冊(cè)》這本書特別執(zhí)著,主要就是覺得它厚,內(nèi)容應(yīng)該全面。
但是看起來才發(fā)現(xiàn)問題多多,
基于以上三個(gè)原因,在看到字典這部分時(shí),實(shí)在扛不住,5月份,果斷的《pytho學(xué)習(xí)手冊(cè)》從入門到放棄,換看了《簡(jiǎn)明Python教程》,挺薄的一個(gè)小冊(cè)子,用一周的時(shí)間敲完整本書,記住是敲完。
對(duì)其中的迭代器如列表、字典、字符串這些數(shù)據(jù)結(jié)構(gòu)好像有了些許了解,特別是對(duì)OOP的使用方法,更加清晰,對(duì)屬性、方法這些概念的了解更深。
隨后又由于工作原因,丟了1個(gè)月,后來又在拾起來的時(shí)候,感覺忘的差不多了,沒辦法, “只有親自動(dòng)手的東西,記憶才深刻”是不變的真理,就在網(wǎng)上買了本《pytho編程導(dǎo)論》,這本書不是主講python語法的,但是跟著書上每章的課題,逐個(gè)研究圖論、概率、機(jī)器學(xué)習(xí),對(duì)書中的每個(gè)例子,自己先寫代碼,再運(yùn)行,再比對(duì),雖然對(duì)python語法的了解還是半吊子,但是計(jì)算思維逐步形成,特別是基于oop編程時(shí),更熟練數(shù)據(jù)抽象方法。
堅(jiān)持1個(gè)月后,又由于工作原因,學(xué)習(xí)進(jìn)程遭到擱置。
直到最近,才又重新拾起python學(xué)習(xí)的行頭。通過將近1年不成功的學(xué)習(xí)經(jīng)歷,感覺還是學(xué)習(xí)手冊(cè)在所有書中是最好的(可能跟個(gè)人學(xué)習(xí)習(xí)慣有關(guān)系,我喜歡把一種用法的工作實(shí)質(zhì)或者確切的使用規(guī)則搞清楚,而不是書上說可以這么用,可以那么用;
當(dāng)時(shí)學(xué)Python感到迷茫的最主要的原因就是,不理解多態(tài)和迭代的概念,總是被網(wǎng)上或很多書上,對(duì)列表或者集合這些數(shù)據(jù)結(jié)構(gòu)的花式用法搞懵),但是中文版難以接受怎么辦?
找來英文版的慢慢磨唄,這樣看了兩個(gè)星期,中英文對(duì)照,發(fā)現(xiàn),用英文行文的習(xí)慣來看中文版,就能理解其中的意思了,后來又轉(zhuǎn)用中文版,但總覺得,光看書不是正道。
所以度娘了Python練習(xí),發(fā)現(xiàn)了Codewar,通過刷題,最終發(fā)現(xiàn)一條適合自己學(xué)習(xí)的路:codewar刷題,發(fā)現(xiàn)自己的不足,看《python學(xué)習(xí)手冊(cè)》,再刷題。
有項(xiàng)目或者想法要實(shí)現(xiàn)的時(shí)候,是更好的鍛煉機(jī)會(huì),沒有鍛煉機(jī)會(huì),就去codewar刷題,現(xiàn)在感覺很多知識(shí)點(diǎn)掌握的更好,特別是codewar很多題目都是貼近現(xiàn)實(shí)使用的,對(duì)編程技能提高有很大促進(jìn)。
這位大佬自己本身有C語言的基礎(chǔ),自己看書和項(xiàng)目實(shí)踐都用了一年,如果你是完全沒有基礎(chǔ)的小白,那么要花費(fèi)的時(shí)間和精力更是無法想象的。所以如果想入門,最好有老師帶領(lǐng),省時(shí)省力快速就業(yè)。
聯(lián)系客服