標籤:

沒有編程基礎可以直接學習 Python 語言嗎?熟練運用 Python 後能夠做些什麼?


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

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

本文以《小白帶你學Python》為內容方向,試圖在繁雜的信息里,給你找到你學習Python的動力和路徑,本文更新於2017年09月20日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 能做什麼!我表示相當的無語……

既然是面對沒有碰過 Python ,不知編程為何物的人,就不提項目名了……

  • 可以管理你的日程和文件!你可能覺得現有的 GTD 工具太弱了,文檔分類整理程序太弱了,那你可以用 Python 自己做一個管理程序。
  • 可以做一個自己的網站!你可能覺得現有的論壇程序太弱了,博客程序太弱了,或者你想做一個特別的網站,你可以用 Python 來做。
  • 可以對閉源程序做修改!Python 是駭客喜愛的工具,它原生支持對 C 程序的完美互操作性,是對二進位可執行程序做研究和改造的絕好工具。
  • 可以做惡意數據文件!你也可以用它做測試工具,以方便製作利用異常數據在被攻擊電腦上執行代碼的數據文件(Word文檔,PDF文件,影音文件等)。
  • 能學習第二門語言!嗯, Python 可以做入門,這有助於你學第二門語言。

隨便舉了一些例子。總之 Python 是通用編程語言,而且相比一樣很通用的 Java 更適合做網站。所以,凡是通用編程語言能做什麼,Python 就能做什麼。

這裡要提醒你,除了C# C++ C Objective-C之外的語言工具用來做窗口程序就是自虐!當然有的人說 VB 和 Delphi 也很好用,但是現在也不是很適合學它們。會有人說 Java 也適合做窗口程序,那我就只好呵呵了。


很多人都認為Python很簡單,但Python真的不簡單,入門可以學Python,但也僅限於基礎,因為動態類型、函數式編程對於沒有軟體設計基礎的人是很難理解的,真正掌握好Python需要對C/Java/PHP等都有所了解。

附:Python教程 - 廖雪峰的官方網站


當然可以

熟練運用,你會用它來解決你的實際生活問題。

舉例:

如果你每周都要做周報,可以用python寫一個周報自動化工具,幫助你統計數據等


同意@張志煒 Python是入門最好的語言

《笨辦法學Python》專門為你準備:

http://learn-python-the-hard-way-zh_cn-translation.readthedocs.org/en/latest/index.html

不只是python,這是所有編程語言學習最好的教材,英文版的也是免費的,你可以下載到PDF,順便提升看英語原版編程書的感覺。差不多有概念了,可以照@狼大人 說的,看 tutorial


可以。5分鐘之內可以熟練使用python解各種列式計算的數學題。


基本任何一門生產語言,如果把庫涵蓋進來,都不是很好學的,當然也包括python


僅僅是一門編程語言而已,會編程的人都需要一門領他們進入計算機科學大門的語言,Python是個不錯的選擇。

Python對網路友好,可以搭建伺服器,可以用做網路腳本,是網路爬蟲爬取端的重要實現手段。

Python對數據特別是文本數據支持良好,弱類型設計不僅易於學習,而且合理得隱藏了一些不必要可見的操作,作為數據處理腳本語言也是不錯的。

Python對於其他語言介面豐富,可以作為粘合劑語言。

Python擁有較為豐富和實用的數學庫和數據可視化庫,對於想做數據挖掘和機器學習的數學渣也是一門不錯的工具語言。n」

但是,任何一門語言要做到得心應手得使用都需要經過大量實踐,Python只是在硬學習成本上比較低,深入之後其延伸的深度和廣度並不比其他語言差。

以上。


Python最適合沒有基礎的新手來學, 因為語法簡潔, 數據結構簡單, 上手極快.

入門之後, 推薦去做http://projecteuler.net/的題目, 可以配合Sympy這個Library, 前40題應該可以解決的. 會給你一些小小的成就感.

進階的話, 就不只是學習python能達成的了. 必須要配合一些其他知識. 比如做Web, 要懂得Web知識, 推薦框架有Flask, Django等. 做數據分析, 有Numpy, Pandas等. 當然還有很多很多, 幾乎是只有你想不到, 沒有其做不到.

至於如何上手, 對於完全沒有編程基礎的新手, 可以考慮用這個Codecademy. 互動式學習環境. 自制力強, 想多學習的, 推薦Coursera上的Python的課程, 很多.


沒有編程基礎可以直接學習Python,這沒什麼問題,國外很多人也是把Python當成自己的第一門語言來學的。


本人學醫的,電腦也就是office和看個電影打個小遊戲的水平,連ps都不會。有一天在我很鬱悶的時候,@狼大人 說python可以治癒,於是就去試了一下,開始的時候教程還點錯了學了一小段javascript,後來換回python,上手很簡單,純理性思考確實很治癒。咱現在也是知道console的人了。。。


在考慮是否學python之前,你得先問清楚自己為什麼要學python,學了它你想用它來幹什麼!

python只是一門工具,它本身不會自動地為你帶來任何價值,即使你把它學到很熟很熟,如果沒有把它放在一個具體的應用場景去為你解決問題,它就沒啥大作用!


python語言很簡單的!!! 不需要編程基礎。 做的東西也很多。 go agent就是python做的。


很多書,很多文章寫得很好,但這些只講語法的書或文章,是針對有編程經驗的。

很多初學者,返回看書,書上代碼都可以看懂,為啥自己不能動手寫代碼解決問題。

原因在於他們沒有學習計算思維、訓練編程思路。

黃哥的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


Python是入門最好的語言


python沒啥用,部分公司用來做網址,大量公司用來做數據,做數據也是做原型,回頭改成c。

沒有啥必須要學python的強理由,如果都是從頭學起,有那個時間不如學java、c。

弱的理由是:可以作為perl的替代,總要會一門腳本語言吧,當工具用處理零碎問題


python是一門極好的入門語言,可以國內沒有學校開這門課。

python可以用來做幾乎所有常見語言能做的事,並且在很多領域要做的更快更好。


第一個問題的答案是可以。我之前不會任何嚴肅的編程語言。

第二個問題,舉幾個栗子。

我每周要發很多個測試版ipa給幾組相對固定的人,於是用 python 寫了一個腳本實現自動化。

我每周要統計公司各個應用的下載量,於是寫了一個腳本去分析從 iTunes Connect 下載的 CSV 並生成簡單的報表。

WordPress 太笨重,我想自己弄一個更簡單的 markdown to html 轉換器,於是用 flask(一個基於 Python 的 web 框架)搞了一個,現在正在本機測試。


編程基礎只是可以迅速上手並開始工作,如果只是想入門,最重要搞清楚,自己的邏輯性是否清楚


根據我目前對python的了解,適合這麼幾個類型工作。

1:頻繁的文本分析或者文本與資料庫互相數據傳遞。(強大的正則表達)

2:代替shell(linux下),寫一些控制性的東西。

3:項目中進行快速的迭代(代碼修改真心容易),應對客戶的需求瞬間變化。

是否適合大項目,沒實踐過,不知道


剛剛學了一點,現在也不知道console是啥,但是我已經寫了幾百行程序,用了幾個像numpy等庫,做疲勞分析,很好用,比用excel逼格高。準備持續學下去。


我是學建築的,也剛學python,了解了下各種編程語言,覺得得還是從python學起比較好,因為它「設計清晰,文檔齊全,也很強大,靈活,也適合做大型項目」。列印了本『簡明python教程』,剛看了個開頭,現在會hello world了,哈哈


推薦閱讀:

【譯文】2016年度Analytics Vidhya上最火爆的36篇文章和資源
IDLE如何清屏?

TAG:Python |