完全沒學過編程的人學習 Python前應該掌握些什麼?

還有兩個星期就要開始上課了。之前完全沒學過編程語言


在眾多高大上的自學指導中,嘗試做一股清流,把要講清楚的都講清楚,除了一堆資料之外,你能在學之前就有一個非常明顯的結果傾向。

如果你對職業或者規劃還有疑問,請你查看下:https://www.zhihu.com/question/20039623/answer/201115937

本文以《小白帶你學Python》為內容方向,試圖在繁雜的信息里,給你找到你學習Python的動力和路徑,本文更新於2017年7月21日17:30;

你想更深入了解學習Python知識體系,你可以看一下我們花費了一個多月整理了上百小時的幾百個知識點體系內容:

【超全整理】《Python自動化全能開發從入門到精通》筆記全放送

================正文分割線============

在前文中我們提到:

Python崗位有哪些呢?主要的崗位有這些:

Python全棧開發工程師(10k-20K)

Python運維開發工程師(15k-20K)

Python高級開發工程師(15k-30K)

Python大數據工程師(15K-30K)

Python機器學習工程師(15k-30K)

Python架構師(20k-40k)

目前應用最多的:全棧開發、數據分析、運維開發,今天我們就以這三個重點的崗位來做一下自學Python的規劃,希望你在學之前就能有結果的來走得更遠。

在這裡我們建議大家用知識投資的《道、法、器、術、勢》五個工具來完美的執行和落地自學Python,好了,廢話不多書,我們來開始:

————————

第一:道——明確目標

其實很多人在學習Python之前很少想這個,因為很多人說:現在Python很火呀,所以我么需要學。這個其實跟你自己沒有什麼關係,例如:你曾經想做一個網站不會開發,現在可以做了,現在Python很火併且你也要學來找工作,未來Python很火,我具備了Python的技能會不錯。

在一生中,我們或多或少總會卡到目標上。在一些我們擅長的領域,我們會有明確的目標,並且積極指導別人:親!幹事之前,你要先定目標啊!

王健林的小目標,大家在朋友圈也都看過了,他會定先掙它一個億。

第二:法——做好你學習Python的系統規劃

1.目前市場需求主流的崗位里,你得選擇一個其中你目前看來可以學,並且最敢興趣學習的方向;

2.在方向選擇好後,對照招聘網站:拉勾、智聯、Boss直聘等網站的崗位要求,進行學習內容的統計與大概的記錄;

3.分模塊的計劃你學習這個模塊的時間和完成的大概目標;

4.列出你可能出現的學習誤差與為之準備的應對方案;

好了,你發現沒有,其實任何學習重要的不是有什麼資料,核心是如何學,學多久,有沒有時間限制,遇到過自己多次學習某個內容或者其他人學習某個內容,最關鍵的一點是在起步階段,開始屬於激情期,激情在前面釋放越多,後面的持續力就很弱,好了這就是關於學習計劃。

廢話說多了,那我們來看看一個普適性的學習Python的流程;

1天——下載並安裝好學習環境:到www.python.org網站上下載一個python3.0以上的版本。我建議初學者,不要下載具有IDE功能的集成開發環境,比如Eclipse插件等。

4周——下載一些python的學習文檔,比如《簡明Python教程》,《笨辦法學Python》等等。通過學習語法,掌握python中的關鍵字語法,函數語法,數學表達式、變數、數據結構、語法等等等

1. 了解Python是什麼,都能做些什麼?

2. 知道什麼是變數、演算法、解釋器

3. Python基本數據類型

4. 列表和元組的操作方法

5. 字元串操作方法

6. 基本的字典操作方法

7.任何知識它的基礎知識都是有些枯燥的,現在我們就可以動手來做一些邏輯層面的東西了。掌握 if、else、elif、while、for、continue、break和列表推導式等這些語句的使用,還有程序中的異常處理。

2周——看完基礎後,就是做一些小項目鞏固基礎,python具備很好的交互學習模式,對於書本上的例子我們可以通過交互平台進行操練,通過練習加深印象,達到學習掌握的目的。

2周——通過以上三個步驟的學習後,我們大致掌握了python的常用方法、關鍵字用法以及函數語法等。接下去的學習上,我們就可以著手學習常用模塊的使用, 比如os,os.path,sys,string模塊等。我們可以在交互環境中先熟悉使用其中的函數,如果遇到函數的使用上的問題,可以參考python 安裝後的自帶chm幫助文件。

2周——為了更好得掌握python,我們的學習不能只是停留在學習一些語法或者api階段。在此階段中,我們可以嘗試用python解決我們項目中遇到的一 些問題,如果項目不是用python開發的,那我們可以想想能不能用python製作一些項目組可以使用的一些工具(utility),通過這些工具簡化 項目組成員的任務,提高我們的工作效率。如果沒有項目,我們也可以自己找些題目來自己練習練習。

2周——Python庫是Python的精華所在,可以說Python庫組成並且造就了Python,Python庫是Python開發者的利器,所以學習Python庫就顯得尤為重要:

2周——經過以上鍛煉後,我們的python知識水平肯定是越來越高。接下去的學習,我們就要更上一層樓。為了學以致用,真正能應用於項目開發或產品開發,我 們還必須學習企業應用開發中必須要掌握的網路和資料庫的知識。在此的學習就不光是python語言本身的學習了,如果之前沒有學習和掌握很網路和資料庫知 識,在此階段我們可以藉此機會補習一把。

3周——到此階段,我們已經是真正入門了。在接下去的工作中,就是要快速地通過我們的所學來服務項目了。在此階段,我們除了掌握python自帶的模塊外,我 們最好在掌握一些業界廣泛使用的開源框架,比如twisted、peak、django、xml等。通過熟練使用它們,達到閃電開發,大大節省項目寶貴時間。

《Python 核心編程》,介紹了 Python 的一些具體領域的開發方法;

《Python 網路數據採集》,很簡單的爬蟲入門書;

《利用 Python 進行數據分析》,介紹了 Pandas 和 NumPy 的用法;

《Flask Web 開發》,如何用 Flask 寫一個博客。

第三:術——你具體的學習手段

1.每天你計劃學習多少時間?例如一天必須學2小時,每天堅持;

2.每個階段的計劃拖延時間不能高於多少時間?

3.如果一個階段不順利如何調整?

其實很多時候,並不是資料不夠多,而是本身的學習思路和計划出現了問題,那麼其實最後學習Python的結果會變成:懂得了很多道理,收集了很多資料,依然學不好Python。

第四:器——學習的工具和素材

在知乎的所有學習的評中,出來最多的就是書、視頻、網站一大堆,很多人覺得非常的贊,確實如此,但是回頭看,你的網盤裡躺著的500G視頻,還是沒有讓你學會Python,我給大家的建議是:少為多,學為多,做為多,完成為多,而不要做伸手黨。

在主流的學習中,按照學習素材來分,我們分為這幾大類:

——真人:有人給你準備好素材,過程計劃,內容,讓後你只要用心學就行,這個就是大家常說的培訓,屬於懶人成長式。(線下培訓班)

PS:不做任何推薦

——視頻:有人把學習的過程錄製好,你只要按照要求跟著做就行,出現問題你無法及時找到。(真人視頻、代碼視頻)

Python入門_Python入門教程_python入門視頻教程-慕課網

http://blog.fishc.com/category/python

https://ke.qq.com/course/134017#tuin=cd72585

——書本:有人把學習過程幫你寫出來,你只需要跟著書本的過程過就行,然後按照要求學習(實體書籍、電子書)

《簡明Python教程》

《笨辦法學Python》

https://learnpythonthehardway.org/

https://www.kancloud.cn/kancloud/python-basic

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000

書籍推薦如下:

————————————————————————

下面我們推薦6本高分書籍給大家,希望大家學習愉快:

1.Python編程:從入門到實踐

豆瓣評分:8.8

內容簡介:本書是一本針對所有層次的Python 讀者而作的Python 入門書。全書分兩部分:第一部分介紹用Python 編程所必須了解的基本概念,包括matplotlib、NumPy 和Pygal 等強大的Python 庫和工具介紹,以及列表、字典、if 語句、類、文件與異常、代碼測試等內容;第二部分將理論付諸實踐,講解如何開發三個項目,包括簡單的Python 2D 遊戲開發如何利用數據生成互動式的信息圖,以及創建和定製簡單的Web 應用,並幫讀者解決常見編程問題和困惑。

豆瓣書友推薦:很好的入門書,簡潔全面,適合小白。learning python之類大磚頭太不友好。這本雖然有些地方講得不深入,但是對新手友好。

————————————————

2."笨辦法"學Python

豆瓣評分:8.0

內容簡介:本書是一本Python入門書籍,適合對計算機了解不多,沒有學過編程,但對編程感興趣的讀者學習使用。這本書以習題的方式引導讀者一步一步學習編程,從簡單的列印一直講到完整項目的實現,讓初學者從基礎的編程技術入手,最終體驗到軟體開發的基本過程。

Zed Shaw完善了這個堪稱世上最好的Python學習系統。只要跟著學習,你就會和迄今為止數十萬Zed教過的初學者一樣獲得成功。

這本書會讓你的每一分鐘投入都有回報。Python是世界上最強大、最受歡迎的編程語言之一,很快你就會成為一名Python程序員。

豆瓣書友推薦:花了一周的時間看完,在以前的基礎上零零碎碎學了一些新的東西,還算是有所收穫,但是前面講的很基礎很簡單,到ex40之後突然難度增加不是很懂在講些什麼。

————————————————

3.Python學習手冊

豆瓣評分:8.1

內容簡介:《Python學習手冊(第3版)》講述了:Python可移植、功能強大、易於使用,是編寫獨立應用程序和腳本應用程序的理想選擇。無論你是剛接觸編程或者剛接觸Python,通過學習《Python學習手冊(第3版)》,你可以迅速高效地精通核心Python語言基礎。讀完《Python學習手冊(第3版)》,你會對這門語言有足夠的了解,從而可以在你所從事的任何應用領域中使用它。

豆瓣書友推薦:用了兩周的時間將這本書啃了一下,還有200多頁的電子版沒看,但還是忍不住先來評論。既是總結自己,也想幫助別人。

本書總評:

優點:解釋詳細,例子豐富;關於Python語言本身的講解全面詳盡而又循序漸進不斷重複,同時詳述語言現象背後的機制和原理;除語言本身,還包含編程實踐和設計以及高級主題。

缺點:有些厚;翻譯不佳;代碼練習題很少;

————————————————

4.Python基礎教程

豆瓣評分:8.0

內容簡介:本書是經典教程的全新改版,作者根據Python 3.0版本的種種變化,全面改寫了書中內容,做到既能「瞻前」也能「顧後」。本書層次鮮明、結構嚴謹、內容翔實,特別是在最後幾章,作者將前面講述的內容應用到了10個引人入勝的項目中,並以模板的形式介紹了項目的開發過程。本書既適合初學者夯實基礎,又能幫助Python程序員提升技能,即使是 Python方面的技術專家,也能從書里找到令你耳目一新的東西。

豆瓣書友推薦:寫得挺生動親民的,很好的入門書。

————————————————

5.Python核心編程

豆瓣評分:8.0

內容簡介:學習專業的Python風格、最佳實踐和好的編程習慣;

·加強對Python對象、內存模型和Python面向對象特性的深入理解;

·構建更有效的Web、CGI、互聯網、網路和其他客戶端/伺服器架構應用程序及軟體;

·學習如何使用Python中的Tkinter和其他工具來開發自己的GUI應用程序及軟體;

·通過用C等語言編寫擴展來提升Python應用程序的性能,或者通過使用多線程增強I/0相關的應用程序的能力;

·學習Python中有關資料庫的API,以及如何在Python中使用各種不同的資料庫系統,包括MySQL、Postgres和 SQLite。

豆瓣書友推薦:了解Python語言方方面面的不錯選擇,雖然版本有些舊,對於較晚接觸Py的人來說,一個「副作用」是可以更多地了解Py的過去。

————————————————

6.流暢的Python

豆瓣評分:9.5

內容簡介:本書由奮戰在Python開發一線近20年的Luciano Ramalho執筆,Victor Stinner、Alex Martelli等Python大咖擔綱技術審稿人,從語言設計層面剖析編程細節,兼顧Python 3和Python 2,告訴你Python中不親自動手實踐就無法理解的語言陷阱成因和解決之道,教你寫出風格地道的Python代碼。

豆瓣書友推薦:非常好的python進階書,翻譯的也不錯,基本上沒有錯誤。協程和元編程死了一堆腦細胞。之前也看了不少文章宣傳py3,但看完這本才最終決定遷到py3。

————————————

——新聞:關於學習的碎片化的諮詢和知識,來用於你的個人成長(微信、知乎、諮詢流)

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000

http://python.jobbole.com/

http://www.magedu.com/pythonxx

http://www.pythontab.com/

第五:勢——學習的心態和狀態

1.任何一個學習的過程,看起來很爽,但是做起來就未必了,老掉牙的堅持是必備的。

2.教程選擇一到兩個就OK了,不要求多;

3.多寫代碼,盡量讓代碼擼爽你;

4.盡量多出錯;

————————————

最後給大家貢獻個一月學會Python基礎開發的訓練計劃:

時間分為4周,全部自學,僅提供大綱,適用於Web方向:

1、第一周:讀完《笨辦法學Python》;

2、第二周:寫個爬蟲,需要深入了解re、sqlite3、Queue等幾個模塊,做個簡單爬取;

3、第三周:學習一種Web開發框架,推薦Flask、webpy、Django之類的,學個資料庫,寫個簡單的web應用如博客;

4、第四周:給博客做個小功能並走完測試和伺服器上架;

————————

以上為關於如何自學的一個流程,希望大家拍磚!


我正在寫專欄,免費帶新人,走起


我工作中用python已經快4年了,可惜最近才開始認認真真想徹底學習一下。

總體感覺英語編程和英語有著莫大的關係。流利的英語本身對編程有著一定程度的幫助。

目前YouTube上有一個56段的視頻python教學視頻不錯,對於基本的python語法入門很有幫助。樓主不妨從那個開始。在youtube輸入「python tutorial」即可。

我也在python學習中,與樓主共勉


買一本書,先預習,

上課認真聽講

課後認真寫作業。

最關鍵的要動手敲代碼。

請看看以下內容,可能對你有點幫助。

請看黃哥本人寫的文章

如何捅破python編程的那層紙

article/pythonstudy.md at master · pythonpeixun/article · GitHub

剪刀石頭布小習題三種語言python2、php、go代碼

article/jdstb.md at master · pythonpeixun/article · GitHub

一段小代碼說明@property裝飾器的用法

一段小代碼說明@property裝飾器的用法

黃哥python遠程視頻培訓班

article/index.md at master · pythonpeixun/article · GitHub

黃哥python培訓試看視頻播放地址

article/python_shiping.md at master · pythonpeixun/article · GitHub


去 code academy 順著流程過一下,了解基本的數據結構,其他的就邊用邊學


語文數學英語,中學水平


推薦閱讀:

爬蟲入門到精通-headers的詳細講解(If-modified-since)
theano function調試有什麼好方法?
如何讓停留在語法層面的 C++,變成實際工程中的 C++?
《無問西東》豆瓣短評分析
Python web 開發工具箱

TAG:Python | Python入門 |