結(jié)合自己的學習經(jīng)歷,談一談如何學習Python吧。
入門階段
Python其實語言本身已經(jīng)很接近自然語言了,所以入門其實并不麻煩。如果你是從未接觸過編程的萌新,給你推薦一門Udacity CS101,這門計算機導論課,大家可以自己去搜索,就不貼鏈接了。這么課不僅講解python的一些語法,也會提到一些計算機的基礎(chǔ)概念。
當然如果大家覺得視頻太慢不適合自己的,推薦一本叫做《A Byte Of Python》的書,然后照著書里的代碼自己敲一遍,基礎(chǔ)的語法都有講到,敲完一遍后,大概也就算入門的。這本書通過搜索引擎也很容易找到,有中文和英文兩版的區(qū)別不大。當然,最重要的是你一定不能copy書里的代碼,然后運行,學編程,不動手是不行的。而且敲的過程中,難免會有一些打錯的地方,這時候根據(jù)錯誤信息,來學習一下如何debug也是極好的,當然這個過程里,你也能對python的編程環(huán)境熟悉。
編程環(huán)境的話可以選擇文本編輯器+命令行運行,或者IDE的兩種。前者推薦Sublime Text,后者推薦Pycharm,當然這只是一種推薦。
看完《A Byte Of Python》你應該對大部分語法比如控制語句,函數(shù),對象等都有了一定的了解了,這時我強烈推薦大家廖雪峰的Python教程,這個教程前面講的很基礎(chǔ),但是到后來開始講一些Python的高級特性,看完你會感嘆,“我的天,代碼居然還能這樣寫?!逼渲羞€會提到IO編程,網(wǎng)絡編程,數(shù)據(jù)庫操作等也算是一些小的應用場景,并且教程里結(jié)合了作者踩坑的一些提醒,對新手來說幫助很大。教程結(jié)束時,有一個為期一周的小練習,是寫一個博客,能將學到的東西,馬上實踐,并展示給身邊的人看,這本身就是一個對于初學者極大的正向激勵。值得強調(diào)的就是,教程里代碼和練習題最好都做。很多事情往往不是你想象中那么簡單,開始寫,你會發(fā)現(xiàn)很多問題。
對于練習,給大家推薦一個叫做codewar的網(wǎng)站,是在線編程的一個網(wǎng)站,上面有很多算法題,分難度,循序漸進,入門題是寫一個求和的函數(shù),對新手很又要,自帶升級的機制,還有社區(qū)的排行榜,能讓你體驗一把網(wǎng)絡游戲里練級刷怪,欲罷不能的感覺。
應用階段
當你入門之后,如果你還沒有明確的目標,那么你可以做一些練手項目,來鞏固已經(jīng)學會的知識,比較常見的便是寫一個爬蟲啊,利用Flask,Django等框架寫個web應用之類的。但不限于這些,主要還是看你自己的興趣。
通過搜索引擎檢索“python 練手項目”會出來很多資源,在這就不貼鏈接了。
比較理想的學習過程是,先自己根據(jù)項目需求,想想如何實現(xiàn),實在沒思路,再翻翻網(wǎng)上的代碼,看看別人是怎么實現(xiàn)的。然后仿照著別人的方法自己實現(xiàn)一遍,在實現(xiàn)過程中,千萬不能把別人的代碼clone下來,跑成功就滿足了。結(jié)合文檔,慢慢查懂別人代碼的意思很重要。這也會鍛煉你查文檔的能力,這對于一個程序員來說,十分重要。
值得一提的是,現(xiàn)在機器學習,人工智能這一話題被大家吵得很熱,但我不建議大家一開始就去練習這些項目。因為很多這種項目主要都是讓你去調(diào)用開源框架,然后調(diào)包,因為你不懂得算法本身的原理,所以很多時候你也不明白為什么要這么做,感覺對大家的幫助不是那么大。如果真的有志于涉足這一領(lǐng)域,強烈建議再搭配著看一些算法理論方面相關(guān)的書。
深入階段
由于答主本人也還未達到這一階段,所以不能給大家很好的建議,希望有一天能夠來補上這一部分。
就給大家貼一下自己收集的書單吧。
《Learn Python The Hard Way》
《流暢的Python》
《Python Cookbook》
《Effective Python》
都是好評比較多的書,希望能幫助到大家。
-
python
+關(guān)注
關(guān)注
54文章
4758瀏覽量
84287
原文標題:Python如何入門?
文章出處:【微信號:machinelearningai,微信公眾號:機器學習算法與人工智能】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論