從一開始著手學(xué)習(xí) Python 到現(xiàn)在已經(jīng)半年了隧甚。不敢說(shuō)自己已經(jīng)駕馭的多熟練车荔,但講真 Python 確實(shí)是一門低門檻的語(yǔ)言。
關(guān)注公號(hào)比較早的讀者應(yīng)該很了解我戚扳,這個(gè)公號(hào)里面大部分都是實(shí)戰(zhàn)的項(xiàng)目忧便,從WebHubBot 到 NCMbot ,以及小程序的后臺(tái)帽借,統(tǒng)統(tǒng)都是 Python 來(lái)實(shí)現(xiàn)的珠增。那么回到主題超歌,我們到底如何自學(xué) Python 呢?
其實(shí) Python 非常適合初學(xué)者上手蒂教,相比較于其他主流編程語(yǔ)言巍举,它有更好的可讀性。以及非常豐富的第三方組件庫(kù)凝垛,我們幾乎不用再做“重復(fù)造輪子”的工作懊悯。其次,開發(fā)環(huán)境也是極其易配苔严。
很多讀者定枷,以及我的圈內(nèi)好友在看到我一直在學(xué)習(xí) Python 的時(shí)候,都會(huì)問(wèn)我一個(gè)問(wèn)題届氢,“我該如何學(xué)習(xí) Python欠窒?”。通常情況下退子,我都會(huì)回答岖妄,讓他們?nèi)W(xué)習(xí) 廖雪峰老師整理的教程。
因?yàn)槲彝耆褪峭ㄟ^(guò)網(wǎng)上資源自學(xué) Python 的寂祥。一下午時(shí)間瀏覽完廖雪峰 Python 教程的基礎(chǔ)篇荐虐。之后就開始上手項(xiàng)目,同時(shí)一步步再補(bǔ)充其他知識(shí)點(diǎn)丸凭。
結(jié)合這半年的學(xué)習(xí)福扬,我個(gè)人整理了主要的幾個(gè)經(jīng)驗(yàn):
1、很多老司機(jī)都推薦新人找一本書來(lái)看惜犀,當(dāng)然铛碑,如果你有充足的時(shí)間,那么就找一本淺顯易懂的書虽界,從頭到尾看下去汽烦,同時(shí)把所有的例子都動(dòng)手跑一邊。但你覺得自己的時(shí)間并不多莉御,想快速掌握這門語(yǔ)言撇吞,那么我極力推薦廖雪峰的Python 教程。因?yàn)槲掖_實(shí)是從這個(gè)教程里面學(xué)到了很多礁叔,不懂得地方在查資料去補(bǔ)充牍颈。
2、找一個(gè)實(shí)際的項(xiàng)目去練手琅关。我當(dāng)時(shí)是因?yàn)橐獙懸粋€(gè)爬蟲項(xiàng)目颂砸,爬取 Instagram 的圖片,如果選擇用 Java 的話就太笨重了。因此不得以我就選擇了學(xué)習(xí) Python人乓。在這種條件下的效果比你平時(shí)學(xué)一門語(yǔ)言的效果要很多勤篮。所以,最好的狀態(tài)就是去做一個(gè)實(shí)際的項(xiàng)目色罚。比如去搭建一個(gè)自己的博客網(wǎng)站碰缔。
3、找到一個(gè)已經(jīng)會(huì) Python 的司機(jī)戳护。讓他給你指出一條路子金抡,同時(shí)在遇到卡殼的地方就找他指點(diǎn)。這樣將會(huì)事半功倍腌且,當(dāng)然別人的時(shí)間也是有限的梗肝,所以當(dāng)你遇到問(wèn)題的時(shí)候,第一步應(yīng)該是去搜索查找問(wèn)題铺董。
當(dāng)然巫击,別人的經(jīng)驗(yàn)未必就適用于你自己。雖然上面我說(shuō)過(guò)只花了一下午的時(shí)間就掌握了 Python 的基礎(chǔ)知識(shí)精续,那是因?yàn)槲乙呀?jīng)掌握了其他的開發(fā)語(yǔ)言如 Java坝锰、JS等等的。
對(duì)于一個(gè)完全沒(méi)有編程經(jīng)驗(yàn)的初學(xué)者重付,在學(xué)習(xí) Python 的時(shí)候顷级,面對(duì)的不僅僅是 Python 這門語(yǔ)言,還需要面臨編程屆的一些普遍問(wèn)題确垫,比如:
1弓颈、從零開始,根本不知道從何入手删掀,書籍看到第二章就看不懂了
2恨豁、遇到問(wèn)題不知道如何尋找解決方案
3、缺少計(jì)算機(jī)基礎(chǔ)知識(shí)爬迟,被一些教程中略過(guò)的“常識(shí)性”問(wèn)題卡住
4、看懂了語(yǔ)法之后不知道拿來(lái)做什么菊匿,學(xué)完一陣子就忘了
5付呕、缺少數(shù)據(jù)結(jié)構(gòu)、設(shè)計(jì)模式等等的編程基礎(chǔ)知識(shí)
所以除了之前說(shuō)過(guò)的那三點(diǎn)經(jīng)驗(yàn)跌捆,給初學(xué)編程者的額外建議:
1徽职、切勿浮躁,自信是成功的開始佩厚,雖然你已經(jīng)看了很長(zhǎng)時(shí)間的資料姆钉,但還是不能把程序跑起來(lái)。但相信我,幾乎所有程序員一開始都是這樣的狀態(tài)潮瓶,也都是一步步折騰過(guò)來(lái)的陶冷。
2、選擇合適的教程毯辅。有些書籍是很經(jīng)典埂伦,但未必就適合你。
3思恐、多動(dòng)手沾谜。不要只顧著看教程,一定要親自動(dòng)手讓這些程序在自己電腦跑起來(lái)胀莹。
4基跑、額外的知識(shí),如英語(yǔ)描焰、計(jì)算機(jī)基礎(chǔ)知識(shí)
5媳否、要學(xué)會(huì)看別人代碼。這里推薦多使用 Github栈顷。之前我也整理過(guò)一系列的 Github 教程逆日。Github系列教程一 「開門」Github系列教程二 「加入Github」Github系列教程三 「上手Git」
6、學(xué)會(huì)查看官方文檔
那么萄凤、
為什么一直以來(lái)我都極力推薦每一個(gè)開發(fā)者都要學(xué)會(huì)使用 Python室抽。是因?yàn)檫@門語(yǔ)言真的很簡(jiǎn)單,我所說(shuō)的簡(jiǎn)單是相比較于 C 和 C++ 這樣的語(yǔ)言你需要學(xué)習(xí)很多底層的知識(shí)靡努。
有的人學(xué)習(xí) Python 是覺得工資高坪圾,其實(shí)這樣的人比較危險(xiǎn)但也是比較有激勵(lì)的,還有就是覺得 Python 比其他語(yǔ)言好用惑朦。
其實(shí)我個(gè)人一直很看好 Python 的前景兽泄,因?yàn)槲艺J(rèn)識(shí)的很多工程師都已經(jīng)在學(xué) Python,當(dāng)然很多都是月收入大幾萬(wàn)的漾月。
當(dāng)然病梢,我個(gè)人并非一直用 Python ,我現(xiàn)在是一個(gè) Android 開發(fā)者梁肿,學(xué) Python 的初衷只是覺得在某些場(chǎng)景下用 Python 去實(shí)現(xiàn)比其他語(yǔ)言會(huì)好用很多蜓陌,因此我一直在學(xué)習(xí) Python,畢竟技多不壓身吩蔑,同時(shí)一直堅(jiān)信 Python 在未來(lái)幾年內(nèi)必定會(huì)有大的前景钮热。
同時(shí),學(xué)習(xí)某一門語(yǔ)言千萬(wàn)別抱著等等看的想法烛芬。對(duì)于一個(gè)技術(shù)人員而言隧期,缺乏對(duì)新技術(shù)的渴望和熱情飒责,這是一件非常危險(xiǎn)的事情。之前有看到過(guò)一則新聞仆潮,有個(gè)老外的演講宏蛉,說(shuō)自己50多歲了仍然堅(jiān)持每天寫代碼,了解最新的動(dòng)態(tài)鸵闪,所以他才能做到他們公司的首席科學(xué)家檐晕,因此他才能時(shí)刻指導(dǎo)項(xiàng)目團(tuán)隊(duì)前進(jìn)并保證項(xiàng)目的質(zhì)量。他同時(shí)坦言對(duì)于一個(gè)不寫代碼蚌讼、不了解最新技術(shù)動(dòng)態(tài)的技術(shù)人員或者技術(shù)團(tuán)隊(duì)的負(fù)責(zé)人而言辟灰,這種團(tuán)隊(duì)也就足夠做做小項(xiàng)目,一旦壓力和項(xiàng)目過(guò)大篡石,就會(huì)有很多問(wèn)題暴露出來(lái)芥喇。
對(duì)于一個(gè)新人而言,無(wú)論學(xué)習(xí)什么技術(shù)凰萨,都要以鼓勵(lì)的姿態(tài)出現(xiàn)继控。太多用薪水和你個(gè)人所看到的現(xiàn)狀去衡量一門技術(shù),那絕對(duì)是欠缺眼光的胖眷。任何一門技術(shù)武通,一旦有人去學(xué)習(xí),他就有可能逐漸成為這個(gè)領(lǐng)域的專家珊搀,即便是再爛再?zèng)]人用的開發(fā)語(yǔ)言技術(shù)冶忱,他也有可能就是明日的奠基者或者大佬。
最后境析,學(xué)習(xí)是對(duì)自己最好的投資囚枪,而機(jī)會(huì)屬于有準(zhǔn)備的人,這是一個(gè)看臉的時(shí)代劳淆,但最終拼的還是實(shí)力链沼。人與人之間的差距不在于智商,而在于如何利用業(yè)余時(shí)間沛鸵,所以沒(méi)有等出來(lái)的輝煌括勺,只有干出來(lái)的精彩。
其實(shí)只要你想學(xué)習(xí)曲掰,什么時(shí)候開始都不晚疾捍,不要擔(dān)心這擔(dān)心那,你只需要努力蜈缤,剩下的交給時(shí)間,而你之所以沒(méi)有變強(qiáng)冯挎,只因你還不夠努力底哥,要記得付出不亞于任何人的努力咙鞍。
長(zhǎng)摁‘識(shí)別二維碼’,一起進(jìn)步
生活不止眼前的茍且趾徽,還有手下的代碼续滋、
和嘴上的扯淡
——
個(gè)人博客: http://xiyoumc.0x2048.com/
Github:https://www.github.com/xiyouMc