下面就講講我在coursera上學習python的過程(也是給大家推薦這位有趣的教授,有想學python的同學可以去關注一下)。這是由密西根大學開設的零基礎Python入門專項課程,我先後在coursera學習了裡面的三門課程,分別是《Python入門》,《Python資料結構》,《使用Python訪問網路資料》。
這個教授名叫:CharlesSeverance,下面引至維基百科:Dr. Charles "Chuck"Russell Severance is an American computer scientist and academic who currently serves as Clinical AssociateProfessor of Information at the UniversityofMichigan他長這樣:
Dr.Chuck是一個很有趣的人,他講課非常仔細,在第一門課講變數,條件,函數這些的時候,純英文字幕我也能看的津津有味,而且他還會時不時停下來叫你暫停思考一會兒….(課程配套書《Python for Informatics》)
另外他在每節課後都有OfficeHours或者Interview,他會飛到世界各地,採訪在coursera上上他這門課的人,錄成一個短視頻,讓別人講一下上這門的感受。有一期印象特別深刻是因為他採訪了python的創始人,還跟人家說“我在錄視頻,你配合一下…”
在第一節課《Python入門》裡,他主要講了條件陳述式(while,if,for,continue,break),字串的處理(索引,解析文本),檔案的按行讀書,儲存原理(open函數,控制代碼,刪除分行符號)在第二節課《Python資料結構》,他主要講了string,tuples(元組),list(列表的元素添加,截取),dictionary(字典,索引值對,按鍵大小排序)以及這些的應用。
我記得他在講元組與列表的區別時,講到元組是不可改變的,列表元素是可以改變的,在你認為命名的對象後面可能會更改時,你應該選擇list,若確保對象不再更改,選擇元組則可以節省更多的空間,更快。以前我一直認為解決一個問題最好的方式是靠好演算法,直到他讓我明白了“clever data structure”同樣具有巨大的能量,而事實也是如此。
我認為Dr.Chuck教給我最多就是編程的思想,一些最基本的原理,而且這些也是他試圖去教給你的。在第二節課結束時,這個逗比教授還搞了一個畢業典禮,請來了他的好基友來做畢業演講,鄭重的發認證…此處有音樂……此處有音樂……給你遞認證給你遞認證和你握手和你握手
在第三節課《使用Python訪問網路資料》中,他主要講了Regex(爬蟲基本工具),網路編程,介紹了HTTP(超文字傳輸通訊協定 (HTTP)),URL(統一資源定位器),瀏覽器與server之間的資訊傳輸,XML(可延伸標記語言 (XML)),JSON(資料交換語言)。這些以前從未接觸過的名詞讓我知道了資料資訊是怎樣在網路上進行傳遞的,順便讓我對爬蟲技術又有了更深的理解。
然後Dr.Chuck作為一個長者,也經常教我一些人生的經驗,講到爬蟲,他說爬蟲很酷很強大,但是不能用來做一些不好的事,他還說過:”Don’t scrpe Facebook!” ,“With great power comes great responsibility!”這樣正能量的話。
在第二節課結束時,他曾經說過:“Thank you for spending all this time with me. If you gotten this far, I really appreciate it, So thank you very much.”其實我也想對他說同樣的話,感謝他所做出的一切!他使我會一直堅持Python的學習。
可以看出大家都很喜歡這位可愛的教授。可以看出大家都很喜歡這位可愛的教授。
註:果殼網旗下有個mooc的導航網站,做的還不錯,蠻多課程都有前人的筆記啊,評價啊什麼的,可以看看。(截止C站上推出大量 specialization,因為好多都是新課,尤其capstone,有的都沒開放所以大家不知道)yeayee. com 有不少執行個體,3.4,適合初學者。最近University of Washington 的機器學習課程剛開課,用python的。感覺不錯。推薦EDX上面的Introduction to computer science and programming using python。如果英語字幕看得比較困難,可以去學堂線上上課,有中文字幕。
Rice大學的Python課也上過,裡面的作業大多數都是小遊戲的python實現,且重點在互動上面,適合沒接觸過Python的人,能夠快速找到學習的興趣。
如果想要對cs有更進一步的學習與理解,並用Python實現些經典的演算法,建議去學習EDX的python課。
兩個都是挺有意思的課,可以都去上一上,再根據自己的興趣進行選擇,edx的課程內容比rice大學的這門課程更多,也會難一點。