1. 程式人生 > >Python 極簡教程(一)前言

Python 極簡教程(一)前言

資料 減少 數據 pytho 小爬蟲 動手 爬蟲 基礎 什麽

現在 Python 用處很多,學的人也很多,其流行程度自不必說。但是很多人學 Python 的時候都遇到過問題,特別對於非計算機專業畢業的人來說。

現在的教程非常多,但是絕大部分對於初學者都不夠友好。很多教程為了求全,把很多不常用、初學者從入門到放棄都不會接觸到的內容,一股腦兒全部擺出來,加重了學習的負擔;要麽是面向有基礎的人群,很多地方語焉不詳,無法參照一步步去做。當初我在學習的時候就被坑過很多次,所以想寫一系列面向初學者,甚至沒怎麽接觸過計算機的讀者。希望看教程的人能夠一步步的去練習。

不過學習任何技術都應該有一定的認識,雖然 Python 號稱簡單易學,那都是相對的。學習一門語言,不動手去敲一下,看了也白看。技術好的人,歷來就是動手最多的人。

語言的學習並沒有太多捷徑,需要多練習。希望讀者在看本教程時,不要僅僅看,還要多動手去練。

你也許沒有很強的邏輯思維、你也許沒有足夠的數學知識、也許你寫不出牛逼的算法,其實這都不重要,重要的是學會如何去使用別人已提供的庫中 API(函數或方法)的用途、用法。我覺得語言就像用的各種測試工具一樣,我不用去考慮底層的實現,我只要考慮如何去使用。不要給自己學習增加太多的困難,自己學語言到底要幹啥?做自動化測試還是寫操作系統?

也許有的人會反駁,不了解語言的原理、不了解數據結構、不了解算法、不了解...你的學語言就沒有意義。如果真要會這些才算學會語言,我相信有一大半的開發人員都不合格。

有一句話我覺得很對:不求完美,先讓事情開始,然後再完善它。

如果一開始追求太過,那麽就應了那段經典的話:從入門到放棄。而我覺得絕大部分人可能還沒摸到門檻就要放棄了。

其實我寫這邊教程的目的就是想告訴大家,先學到足夠的知識,然後寫點有意思的小玩意。讓自己的學習能夠見到成果,這會極大促進你學習的興趣。

學習靠的不是毅力,靠毅力的學習都長久不了,因為這個世界有毅力的人本來就少。學習要靠正向的反饋,這些反饋來源於你學習過程中體會到的成就感。你寫出一個自動化腳本,看著自動化腳本自動點擊、自動輸入、自動斷言是有成就感的;你寫了一個小爬蟲,去爬了一個網站上你喜歡的圖片,看著你硬盤上一個個圖片的生成,這也是有成就感的。這些成就感能給你不斷的正向反饋,於是你有一直學下去的動力。在教學過程中,我一直比較推薦去寫寫網絡爬蟲,這比較容易得到這種正向的反饋,同時網絡爬蟲的技術和自動化測試、接口測試有共通的技術點。

而你太過於糾結原理、太過於糾結完美,你會發現你的學習是寸步難行的。

Python學習過程中,就我個人的經驗來說,最重要的是字符串、列表和字典的各種處理操作和函數方法等。因為以後很多時候都在處理這些內容,比如寫測試腳本過程中你需要從界面上提取斷言、需要自己參數化定位語句、需要從數據庫中查詢數據、需要批量插入數據等眾多的操作,都是對這三種數據類型的處理。

也許你不一定能記住所有的函數與方法的具體寫法,但是你一定要知道 Python 對某種數據類型提供了哪些函數與方法。這樣當你碼代碼的過程中需要操作某種數據類型時,才有處理的思路,否則就傻了。對於記不住的函數或方法,你可以查閱教程資料,多用自然就記住了。

對於函數和面向對象之類的,先從概念理解。不要妄想一下就理解什麽時抽象。這需要一個過程,只有當你代碼寫多了,你才知道為什麽要寫函數和寫類,因為函數和面向對象就是為了減少代碼而生的。但是你寫了那麽點代碼,減了就沒了,還談什麽減少。所以暫時不理解也不要過於焦慮,先記住概念。

學習很多時候,需要一個醍醐灌頂的過程。並不是所有的知識點看了、寫了就領會了,每個人都有思維的短板,所以對於某些知識點有時候會出現短路的情況,也就是怎麽想都理解不到,怎麽問也理解不到。那麽對於確實不能理解的內容,先記下來,也許你只是缺少一個契機。但如果你不去記,想給你灌頂,但是沒東西給你灌啊!

由於第一次寫教程,有任何意見和建議,請在評論中指出。謝謝!

下一篇 編碼工具

Python 極簡教程(一)前言