零基礎如何自學Python?完整路線值得一看

這是昨天新加入我的學習群的朋友提的問題:機械工程專業(yè)零基礎如何自學Python悲龟?因為我平時分享得最多的是 Python 中高級編程技巧斧吐,而面向初學者的入門教程會涉及得少一些又固,畢竟入門的內容在網(wǎng)上可以很輕松獲取而且資源也很多,所以平常我也會推薦一些書籍和課程煤率。

程序員在普通人眼里就像魔法師仰冠,一個腳本輕松搶幾十盒月餅(雖然最后被開除),一個插件解決春運搶票難題蝶糯,幾十行代碼搭建一個 Web 網(wǎng)站洋只,用微信自動和妹紙聊天,在程序員眼里這些事太稀松平常了,他們只不過是利用編程語言指揮計算機去自動完成一些需要人類重復操作的繁瑣過程识虚,等你會編程也就不覺得大驚小怪了肢扯。

image

Photo by PICSELI on Unsplash

有些人學習編程剛一開始頭腦發(fā)熱,買了很多書舷礼,下載很多視頻鹃彻,收藏上100G的資料,沒過幾天妻献,熱情就褪去了,最后完成了從入門到放棄的全過程团赁,究其原因主要是缺乏清晰的目標育拨,沒有方向,或者方向不明確欢摄。如果你真正想把編程學好熬丧,那么先想想為什么要學編程,找一份編程工作怀挠,還是為了解決某個繁瑣問題届慈,抑或是做個網(wǎng)站給自己用枷餐,還是寫個App,或者是爬個數(shù)據(jù)做分析,最怕的就是不知道為什么而學播揪,就算是為了擺脫焦慮而學習你也很難學好,很多人跑過來問我入門書看完了辱揭,接下來看什么書扁凛?這就是典型的不知道學了有什么樣,純粹為了學習而學習裁赠。如果大家沒有良好的溝通交流環(huán)境殿漠,歡迎大家來我的PythonQQ群:6395+84010,里面我上傳了很多PDF文件和教學視頻佩捞,而且群的學習氛圍很好绞幌,大家一起交流一起進步。

我們的目的是學以致用一忱,用以促學

以學習爬蟲為例子莲蜘,你學爬蟲的動機什么?你的動機可以是從網(wǎng)上獲取一些數(shù)據(jù)做數(shù)據(jù)分析掀潮,例如菇夸,前段時間有位朋友找到我說,他想開一個廠房租賃公司仪吧,開之前需要選址庄新,選址就要做市場調查,如果僅憑直覺沒有數(shù)據(jù)支撐,很難說哪個地方好择诈,最好的辦法使用爬蟲去58這樣的平臺把相關的交易數(shù)據(jù)爬下來做數(shù)據(jù)分析械蹋,這就是一個很好的動機,而且目標非常明確羞芍。

image

Python 編程有很多方向哗戈,有網(wǎng)絡爬蟲、數(shù)據(jù)分析荷科、Web開發(fā)唯咬、測試開發(fā)、運維開發(fā)畏浆、機器學習胆胰、人工智能、量化交易等等刻获,各個方向都有特定的技能要求蜀涨,比如學數(shù)據(jù)分析就要重點掌握統(tǒng)計學、SQL 等知識蝎毡,搞運維就要非常熟悉 Linux 系統(tǒng)厚柳,所以你首先要清楚你選擇的是什么方向,這個方向有哪些知識是需要重要掌握的沐兵。

以 Web 開發(fā)為例别垮,重點要理解 HTTP 協(xié)議,要知道一個網(wǎng)頁從瀏覽器輸入URL開始到頁面呈現(xiàn)出內容的這個過程發(fā)生了什么痒筒,然后要知道 Web 開發(fā)涉及的前端知識 HTML宰闰、JavaScript、CSS都是做什么用的簿透,然后就是學 Python移袍,掌握基本的語法,常用數(shù)據(jù)類型老充、常用模塊葡盗,就差不多可以去實現(xiàn)你的目標了,幾乎所有網(wǎng)站都需要用到數(shù)據(jù)庫啡浊,那么你至少需要懂一點數(shù)據(jù)庫的知識觅够,SQL 的增刪改查操作要會,程序寫完了巷嚣,我們要部署喘先,而系統(tǒng)一般都是運行在 Linux 環(huán)境,這個時候你還需要了解如何操作 Linux 命令廷粒。

接下來詳細介紹每個過程如何學習窘拯,以及所用到的學習資源和掌握的程度红且。

HTTP 協(xié)議是瀏覽器與服務器通訊的媒介,用戶在瀏覽器輸入URL后瀏覽器會立即向服務器發(fā)起一個請求涤姊,服務端接收請求后暇番,從數(shù)據(jù)庫查詢到合適的數(shù)據(jù),最終把數(shù)據(jù)返回給瀏覽器思喊。瀏覽器與服務器之間的通訊嚴格遵守 HTTP 協(xié)議壁酬,如果你弄懂了 HTTP 協(xié)議,那么也就弄懂了 Web 編程的基本原理恨课,這里推薦兩本關于 HTTP 的書舆乔。

  • 《圖解HTTP》

  • 《HTTP權威指南》

前者偏向于入門,后者適合進階閱讀剂公,前期不一定要細讀蜕煌,大概理解就行,以后你還會回過頭來學習的诬留。

不管再忙都要堅持每天保持3個小時以上的練習時間

任何一個做 Web 開發(fā)的,離不開前端三劍客贫母,這里的三劍客是指 HTML文兑、JavaScript、CSS腺劣。HTML 是骨架绿贞,CSS是外衣,JS控制前兩者橘原,為了滿足更多用戶交互行為需要 JavaScript 來控制籍铁。下面推薦的這幾本書對一個初入門的小白來說完全夠用,挑選一兩本就行趾断,也不需要你全部看完拒名,一本書看完前面的 60% 差不多就行了。

  • 《HTML5秘籍(第2版) 》

  • 《HTML5權威指南 》

  • 《Head First HTML與CSS(第2版)》

  • 《CSS權威指南(第3版)》

  • 《JavaScript DOM編程藝術(第2版)》

  • 《JavaScript高級程序設計(第3版)》

不管再忙都要堅持每天保持3個小時以上的練習時間

了解了基本的前端知識后芋酌,還是有必要了解一下前端的框架增显,如vue.js、boostrap脐帝、react同云、jquery 等等,雖然不一定每個框架都去學一遍堵腹,但至少要知道每個框架的作用炸站,因為以后你不可能什么都是自己重復造輪子。

學完前端知識后疚顷,你現(xiàn)在應該能簡單的做出一些靜態(tài)頁面了旱易,不過禁偎,現(xiàn)在幾乎所有的網(wǎng)站都是動態(tài)的(不是動畫效果,而是頁面數(shù)據(jù)是動態(tài)變化的)咒唆,就是說數(shù)據(jù)都是根據(jù)登錄用戶個性化推薦的届垫,瀏覽器的請求發(fā)送給服務器,服務器從數(shù)據(jù)庫查詢獲得數(shù)據(jù)返回給瀏覽器全释,服務器這邊的實現(xiàn)邏輯就需要用 Python 來實現(xiàn)装处,現(xiàn)在正是開始學 Python 的時候, Python 入門需要掌握的內容包括基本語法浸船、數(shù)據(jù)結構妄迁、常用數(shù)據(jù)類型和常用的模塊的api方法操作等。關于 Python 的書其實很多李命,這里推薦幾本入門和進階登淘。

入門

  • 《Python簡明教程》可以在公眾號「python之禪」回復 “python”免費獲取電子書

  • 《Python編程:入門到實踐》

  • 《Python編程快速上手 : 讓繁瑣工作自動化》

進階

  • 《流暢的Python》

  • 《Python Cookbook》

  • 《Effective Python》

簡明教程就是一本很薄的小冊子,希望你可以認真讀完封字,后面兩本入門書黔州,至少要把前面的基礎學完,至于后面的實戰(zhàn)阔籽,不學也罷流妻,因為你的興趣點不一定在那里。

不管再忙都要堅持每天保持3個小時以上的練習時間

現(xiàn)在差不多可以用 Python 來做很多事情了笆制,但是你還不知道如何寫一個 Web 應用绅这,因為你可能不知道怎么操作數(shù)據(jù)庫,怎么寫 SQL 語句在辆,對數(shù)據(jù)庫進行增刪查改证薇,所以,別急匆篓,先學學數(shù)據(jù)庫知識吧浑度,MySQL 是最流行的數(shù)據(jù)庫系統(tǒng),大公司都在用奕删。對數(shù)據(jù)庫最基本的了解就是要知道什么表俺泣、行、列完残、主鍵伏钠、外鍵、索引這些概念谨设,稍微復雜的就是查詢熟掂,有分組查詢,聯(lián)合查詢等各種條件查詢扎拣,你需要掌握這些基本操作赴肚。

  • 《SQL基礎教程》

  • 《MySQL必知必會》

這兩本數(shù)都是面向初學者的基礎教程素跺,挑選一本就夠了,除了MySQL誉券,還有PostgreSQL指厌、Oralce、SQL Server 都屬于關系型數(shù)據(jù)庫踊跟,另外也有 MongoDB踩验、Redis 這樣的非關系型數(shù)據(jù)庫,你可以相應的都去了解一下商玫,不一定非要馬上就學箕憾。學完數(shù)據(jù)庫之后,你要想的一個問題就是如何用 Python 操作數(shù)據(jù)庫的 CRUD拳昌,雖然沒有專門的書籍講這個袭异,但是網(wǎng)上有很多教程寫如何用 Python 操作 MySQL 的,所以炬藤,學會使用搜索引擎非常重要御铃,因為以后很多時候都是面向 Google 編程。為了防止忘記前面的內容沈矿,也要不時地復習畅买、練習前面的內容。

**不管再忙都要堅持每天保持3個小時以上的練習時間 **细睡。

現(xiàn)在你差不多所有的基礎知識都有所掌握,終于可以磨刀霍霍迫不及待開始第一個真正屬于你自己作品的開發(fā)之旅了帝火,因為前面你已經(jīng)掌握了 HTTP 協(xié)議溜徙,所以現(xiàn)在你可以選擇一個 Web 框架,基于這個框架來開發(fā)我們的 Web 網(wǎng)站犀填,這里推薦使用 Flask蠢壹,這個框架比較流行,然后又是一個比較輕量級的框架九巡,非常靈活图贸。學 Flask 看狗書《Flask Web開發(fā):基于Python的Web應用開發(fā)實戰(zhàn)》。一個完整的 Web 網(wǎng)站從前端 HTML冕广、CSS疏日、JavaScript再到后端 Flask,數(shù)據(jù)庫連接撒汉、CRUD操作基本都能跑通了沟优,項目差不多基本成型,只剩下最后一個步驟睬辐,就是如何把做好的程序發(fā)布到服務器讓它一直穩(wěn)定運行挠阁,持續(xù)提供服務宾肺。

通常,我們的 Web 程序會部署在 Linux 服務器侵俗,很少有用 Windows 作服務器的锨用,所以,熟悉 Linux 系統(tǒng)還是非常有必要的隘谣,Linux 要掌握到什么程度呢增拥?當然,至少要會基本命令操作才行洪橘,推薦下面這幾本書

  • 《快樂的Linux命令行》,公眾號「Python之禪」回復 “l(fā)inux” 可免費獲取熄求。

  • 《鳥哥的Linux私房菜》

  • 《Linux命令行與shell腳本編程大全》

熟悉完 Linux渣玲,程序也部署好了,其實還差一步弟晚,網(wǎng)站需要一個好記的域名方便別人訪問忘衍,畢竟沒人能記住你的 IP,所以卿城,后期的域名購買枚钓,HTTPS 配置,Nginx 配置瑟押,都可以在網(wǎng)上找到相應的答案搀捷。

**不管再忙都要堅持每天保持3個小時以上的練習時間 **。

學編程就是一個打怪升級的過程多望,這個過程一定是曲折的嫩舟,但前途是光明的,痛并快樂著怀偷。

最后祝你升級成功家厌。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市椎工,隨后出現(xiàn)的幾起案子饭于,更是在濱河造成了極大的恐慌,老刑警劉巖维蒙,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掰吕,死亡現(xiàn)場離奇詭異,居然都是意外死亡颅痊,警方通過查閱死者的電腦和手機畴栖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來八千,“玉大人吗讶,你說我怎么就攤上這事燎猛。” “怎么了照皆?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵重绷,是天一觀的道長。 經(jīng)常有香客問我膜毁,道長昭卓,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任瘟滨,我火速辦了婚禮候醒,結果婚禮上,老公的妹妹穿的比我還像新娘杂瘸。我一直安慰自己倒淫,他們只是感情好,可當我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布败玉。 她就那樣靜靜地躺著敌土,像睡著了一般。 火紅的嫁衣襯著肌膚如雪运翼。 梳的紋絲不亂的頭發(fā)上返干,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天,我揣著相機與錄音血淌,去河邊找鬼矩欠。 笑死,一個胖子當著我的面吹牛悠夯,可吹牛的內容都是我干的晚顷。 我是一名探鬼主播,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼疗疟,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了瞳氓?” 一聲冷哼從身側響起策彤,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎匣摘,沒想到半個月后店诗,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡音榜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年庞瘸,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片赠叼。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡擦囊,死狀恐怖违霞,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情瞬场,我是刑警寧澤买鸽,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站贯被,受9級特大地震影響眼五,放射性物質發(fā)生泄漏。R本人自食惡果不足惜彤灶,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一看幼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧幌陕,春花似錦诵姜、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至搬卒,卻和暖如春瑟俭,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背契邀。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工摆寄, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人坯门。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓微饥,卻偏偏與公主長得像,于是被迫代替她去往敵國和親古戴。 傳聞我的和親對象是個殘疾皇子欠橘,可洞房花燭夜當晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內容

  • 這是位新加入知識星球的讀者問提的問題:機械工程專業(yè)零基礎如何自學Python肃续?因為平時分享得最多的是 Python...
    瘋狂的程序猿丶閱讀 1,194評論 0 2
  • 2019年2月28日凌晨 周四 陰雨 1 很困卻不想睡,心里空空如也叉袍。大學時遇到一個夜貓子始锚,被感染了,自己...
    但織雪閱讀 248評論 0 3
  • 《5分鐘商學院》第35周復盤 171課:風險投資分為不同的階段:天使輪喳逛,A輪B輪C輪D輪 在天使輪階段瞧捌,一個想法值...
    笑春風的小天地閱讀 806評論 0 2
  • 給出一個有n個整數(shù)的數(shù)組S,在S中找到三個整數(shù)a, b, c,找到所有使得a + b + c = 0的三元組姐呐。 注...
    和藹的zhxing閱讀 465評論 0 0