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