設(shè)定目標(biāo)
當(dāng)你決定入門Python時(shí),需要一個(gè)清晰且短期內(nèi)可實(shí)現(xiàn)的目標(biāo),是通過學(xué)習(xí)找一份初級(jí)程序員工作,還是為了解決某個(gè)具體的問題,目標(biāo)明確后,你需要了解實(shí)現(xiàn)它要具備那些條件,比如下面是拉勾上一份Python工程師的任職要求:
熟悉Python及常用的web開發(fā)框架;
至少熟悉一種數(shù)據(jù)庫(kù)的使用,如MySQL,mongodb,redis等;
熟悉Linux操作系統(tǒng)及常用命令;
良好的編碼習(xí)慣和文檔編寫習(xí)慣;
做Python開發(fā)除了熟悉語(yǔ)言本身之外,還需要掌握很多相關(guān)聯(lián)的技能,好比打NBA,你不光學(xué)如何投籃,還要練習(xí)力量,及戰(zhàn)術(shù)等一整套東西。所以,一個(gè)普通Python web開發(fā)工程師需要掌握的技能包括至少一個(gè)web框架,比如:Django、flask、tornado,做業(yè)務(wù)系統(tǒng)離不開數(shù)據(jù)庫(kù)的支撐,另外,還需要對(duì)Linux系統(tǒng)的基本操作和常用命令有所了解,因?yàn)橐院竽銓懙匠绦蚧旧隙紩?huì)運(yùn)行在Linux平臺(tái)上。
接下來(lái)我從這幾個(gè)方面逐一介紹:
Python3
不少新手總是糾結(jié)學(xué)Python2還是朋友天虹3,就像手里他同時(shí)有包子和饅頭,不知道先吃那個(gè),這種糾結(jié)完全就是徒增煩惱,因?yàn)樗鼈兪峭环N語(yǔ)言,只有少部分語(yǔ)法不兼容,盡管目前大部分公司還在用Python2,但是Python3逐漸成為主流已是不爭(zhēng)事實(shí),畢竟后者性能方面更占優(yōu)勢(shì),官方也在力推Python3。所以毫不猶豫選擇Python3吧,最多花一天的時(shí)間吧Python2中特有的內(nèi)容搞懂。
開發(fā)工具
工欲善其事必先利其器,做Python開發(fā)的IDE(編輯器層出不窮),我只推薦Pycharm和Sublime,兩個(gè)工具的學(xué)習(xí)成本非常低,網(wǎng)上找一篇教程看了基本就能上手,Vim、Emacs 這樣的遠(yuǎn)古神器還是放以后再去了解吧。另外,今后你所遇到的 90% 的問題都有可能通過Google和StackOverflow來(lái)解決。
學(xué)習(xí)資源
首選的你可以關(guān)注下Python官方文檔,菜鳥教程。
網(wǎng)上入門資源琳瑯滿目,一本好書能為你指點(diǎn)迷津,快速了解Python可以看一下 learn Python in Y minutes這篇文章,但千萬(wàn)不亞歐被標(biāo)題所迷惑,一門語(yǔ)言不能幾分鐘就能學(xué)會(huì),看完之后應(yīng)該會(huì)對(duì)Python有個(gè)初步的印象,照著示例操作完之后,你就要選擇一本合適入門的教程,《A Byte of Python》 是一本值得推薦的書籍,來(lái)說說我推薦這本書的理由。
《A Byte of Python》的中文名叫《簡(jiǎn)明教程》,這本書的最新版已經(jīng)是第10版,基于Python3.5,所以不擔(dān)心是否知識(shí)落后的問題,其次,這本書的厚度152頁(yè)非常適合入門,涵蓋看Python入門所有內(nèi)容,相對(duì)那些五六百頁(yè)的大部頭書來(lái)說非常精簡(jiǎn)了,2個(gè)星期能啃完,還有最重要的一單,這本書是免費(fèi)的。
這本書看完之后,你應(yīng)該能設(shè)計(jì)出簡(jiǎn)單程序出來(lái),再推薦一本《Python學(xué)習(xí)手冊(cè)》作為進(jìn)階學(xué)習(xí),內(nèi)容相對(duì)要更深入,適合有一定編程基礎(chǔ)的人閱讀。
做web開發(fā),HTML,JS,CSS是必須有所了解的,作為前端技能,不一定要深入了解,做到能寫基本的HTML代碼就夠了,此外,你還需要了解HTTP協(xié)議(推薦《圖解HTTP協(xié)議》)。目前比較主流的web框架有Django,flask,tornado,各自都有各自的特點(diǎn),Django文檔豐富,flask短小精悍,tornado異步并發(fā),這里推薦使用flask,推薦書目《flask web開發(fā):基于Python的web應(yīng)用開發(fā)實(shí)戰(zhàn)》
Linux推薦《快樂的Linux命令行》,同樣是一本非常經(jīng)典的入門迷你書,沒有太多理論,范圍也不太寬。
MySQL只推薦一本《MySQL必知必會(huì)》,不到250頁(yè)的小冊(cè)子實(shí)踐性很強(qiáng),沒有什么艱深晦澀的理論堆砌,看完這本基本入門數(shù)據(jù)庫(kù)了。
最后:
只看書不會(huì)進(jìn)步,思考和實(shí)踐才有成長(zhǎng),自學(xué)編程是一個(gè)比較枯燥的過程,如果沒有正向反饋,學(xué)習(xí)的積極性很容易就被打壓下來(lái),所以你應(yīng)該積極參與到相關(guān)的技術(shù)圈子中去,嘗試去解答力所能及的新手問題,向圈子中的大牛們需求幫助,善于總結(jié)自己所學(xué)到的東西,分享給更多的人,記?。耗悴皇且粋€(gè)人在戰(zhàn)斗。
不會(huì)編程能不能學(xué)好Python?
做任何事情都取決于你學(xué)習(xí)態(tài)度,能不能學(xué)好也取決于你,這和我們?cè)趯W(xué)校學(xué)習(xí)知識(shí)是一樣的,老師只是起到一個(gè)引導(dǎo)的作用,至于最后能不能學(xué)好最終還是取決于你。做任何時(shí)候都要有自己的學(xué)習(xí)規(guī)劃和學(xué)習(xí)路線,學(xué)習(xí)Python也是一樣,知道現(xiàn)在應(yīng)該掌握哪方面的知識(shí),下一步需要我們掌握哪方面的知識(shí),企業(yè)和崗位需要我們掌握哪方面的知識(shí),循序漸進(jìn)。
以上就是我的回答,希望對(duì)你有所幫助,學(xué)習(xí)Python推薦你關(guān)注微信公眾號(hào):菜鳥Python筆記,如有不同見解,歡迎在評(píng)論下方給我留言。
聯(lián)系客服