王國維在《人間詞話》中將讀書分為了三種境界:“古今之成大事業(yè)、大學(xué)問者,必經(jīng)過三種之境界:‘昨夜西風(fēng)凋碧樹,獨上高樓,望盡天涯路’。此第一境也。‘衣帶漸寬終不悔,為伊消得人憔悴。’此第二境也。‘眾里尋他千百度,驀然回首,那人卻在燈火闌珊處’。此第三境也。
我從入門Python到現(xiàn)在也沒有多少時間,所以寫如此大的一個題目必定會引發(fā)各種批判,當(dāng)然我沒有想造一個大新聞,只是想根據(jù)自己的學(xué)習(xí)歷程做一個簡單的總結(jié),同時將這三個階段對應(yīng)的一些好的書籍簡單介紹介紹。
Python的用途十分廣泛,不同的程序員將其用于不用的領(lǐng)域,不同的程序員將自己的代碼打包成庫,供其他程序員使用,從而少造輪子,各種庫的使用,加之Python本身的靈活性、易讀性,易寫性,使用的人越來越多,tiobe統(tǒng)計編程語言的使用率如下:Python在一年之間使用排行榜中上升了3名,而且各大公司在招聘員工的時候如果能掌握Python,肯定是一個加分項,因為Python在文本處理,小程序的寫作方面具有太強的優(yōu)勢,前段時間一個朋友讓幫忙改下他們公司logo的顏色,第一個想到的就是用Python,女票讓我?guī)退A(yù)處理大數(shù)據(jù),第一個想到的仍然是Python等等。
當(dāng)然并沒有說其他語言不好,也不是為了討論哪種語言更好,只是Python確實是一門會讓人幸福的語言,下面粗淺的說說我對Python學(xué)習(xí)過程中的境界劃分以及推薦書籍。
第一個階段:初級,掌握Python的語法和一些常用庫的使用
這里首先推薦廖雪鋒在網(wǎng)上的書籍,有Python2.7和3.0版本的,這本書適合于重頭開始一直讀完,作為一個開發(fā)人員,除了基本的語法,這本書里面提到了一些其他的常用的庫,看了廖老師寫的很多東西,感覺他的思路,以及寫博客寫書的高度,概括性,原理性都十分好,這本書讀完之后,相信就可以動手寫很多東西了,可以盡情的玩轉(zhuǎn)Python解釋器了。
另外還有一本書《Python參考手冊》,這本書也十分的有用,關(guān)于Python的方方面面基本都囊括在內(nèi),可以作為一本Python字典來查詢使用方法,十分好用。掌握一門語言最好的方法就是用它,所以我覺得邊學(xué)語法邊刷Leetcode是掌握Python最快的方式之一。我也會在騰訊課堂看《深入淺出帶你學(xué)Python》的視頻課,這個的基礎(chǔ)講解得非常的透徹。
很多只需要將Python作為腳本或者就是寫一些小程序處理處理文本的話,到這一個階段就足夠了,這個階段已經(jīng)可以幫我們完成很多很多的事情了。但是如果是一個專業(yè)學(xué)習(xí)Python的,恐怕還需要努力的升級:首先,國內(nèi)的大多數(shù)人都是學(xué)習(xí)了其他語言(C,C++,Java等)之后來學(xué)習(xí)Python的,所以Python和這些語言的不同,也就是pythonic的東西需要一些時間去學(xué)習(xí)了解和掌握;另外,對于自己領(lǐng)域的領(lǐng)域的庫構(gòu)架的掌握也需要很長的時間去掌握;最后,如果想獨立完成一個Python的項目,項目的布局,發(fā)布,開源等都是需要考慮的問題。
第二個階段:中級,掌握自己特定領(lǐng)域的庫,掌握pythonic寫法,非常熟悉Python的特性
推薦的第一本書是《編寫高質(zhì)量代碼--改善python程序的91個建議》,這本書大概的提了下Python工程的文件布局,更多的總結(jié)了如何寫出pythonic的代碼,另外,也介紹了一些常用的庫。
要想深入的了解Python,有的時候看看Python的源碼也是很重要的,自己通過讀懂源碼,來徹底的了解Python的核心機制,這里推薦《Python源碼剖析——深度探索動態(tài)語言核心技術(shù)》,這本書并沒有看完,只是在需要深入了解Python某個功能或者數(shù)據(jù)結(jié)構(gòu)的時候看看相關(guān)章節(jié),也覺得受益匪淺。
自己領(lǐng)域的書籍和資料也肯定很多,比如web開發(fā)的構(gòu)架都有很多,只有了解熟悉了所有構(gòu)架,在選擇的時候才能衡量利弊,然后深入掌握某些構(gòu)架。
這個階段過后,可以寫出pythonic代碼,可以通過PEP8的檢查,可以為開源社區(qū)做貢獻了,可以將一個Python文件寫的十分好,但是如果要用Python開發(fā)一個大型項目,還是有很多東西需要掌握的,比如項目的文檔,項目的發(fā)布,下載,項目性能和案例等等。
第三個階段:高級,從整個工程項目著眼,考慮document,distribution,性能優(yōu)化等
目前只看了一本書《the hacker guide to python》,看的是英文版的,這本書對項目的布局,文檔,性能,發(fā)布等做了很多詳細的介紹,我覺得寫的還是很不錯,只不過本人還需要再讀幾遍。
對于大多數(shù)人來說,很難有機會從頭開始一個有意義的大型工程項目,所以自己可以用Python實現(xiàn)一些簡單的功能,簡單的項目,這個靈感可以去知乎或者quora搜索,很多前輩都分享了自己的經(jīng)驗。
從大局入手,規(guī)劃好項目的布局,設(shè)定好相應(yīng)的文檔說明,提供工程下載安裝的方法,帶幾個demo,每個類,每個函數(shù),每行代碼都反復(fù)推敲,寫出pythonic的程序,相信這時候Python于我們便是信手拈來了!
總結(jié)
本文只是我認為的學(xué)習(xí)Python的三種境界,以我粗淺之眼光,肯定有太多太多的不足,而且自己也就是一個介于初級和高級Python程序員的水平,寫這個文章,也算是給自己設(shè)立的一個目標吧。
不向靜中參妙理,縱然穎悟也虛浮 立乎其大 和而不同 古之成大事者,不惟有超世之才,亦必有堅韌不拔之志
-
編程
+關(guān)注
關(guān)注
88文章
3595瀏覽量
93600 -
python
+關(guān)注
關(guān)注
56文章
4782瀏覽量
84460
原文標題:Python大俠眼中的學(xué)習(xí)Python的三種境界
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論