從來沒有接觸過編程的人怎樣從頭開始自學python?

娛評小白


首先,我們需要清楚自學Python編程的目的是什麼,也就是將要是使用Python用於哪個方向的開發工作。Python作為一門被廣泛應用的編程語言,可以應用於Web開發、大數據開發、數據分析、人工智能開發、嵌入式開發、遊戲開發、自動化運維、自動化測試等多種方向,不同方向的Python學習曲線是不同的。


無論我們是希望通過學習Python尋求新的行業工作,還是希望在已有行業進行深耕,提升自己的技術解決能力,以便做更多事情,明確學習的目標是至關重要的。


我們在確定了學習Python的目的與方向之後,再來看看學習Python 的方式有哪些。

首先,對於 Python的基礎部分,比如 數據結構、語法、函數等,如下圖。這些基礎內容可以通過網站或者書籍以自學的方式學習,難度很低。如果你又具備其他語言的編程基礎,那麼學起來將更加的輕鬆。

即使我們是想通過培訓的方式學習Python,也建議提前通過自學掌握Python基礎部分內容。


我們可以通過網站學習Python的基礎內容,比如以下途徑:


  • 文檔類教程 :廖雪峰 官方網站

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

  • 文檔類教程 :Python 菜鳥教程

http://www.runoob.com/python/python-tutorial.html

  • 視頻類教程:bilibili

https://search.bilibili.com/all?keyword=python&from_source=nav_search_new
  • 視頻類教程:慕課網

https://www.imooc.com/
  • Python社區:Python 中文開發者社區

https://www.pythontab.com/


我們在掌握Python基礎部分之後,我們然後根據自己的 Python的應用方向,再來確定後續的學習方式,如下:


以我個人的經驗來看,對於像 數據挖掘分析、自動化測試、Linux自動化運維、測試這類方向,有了Python 基礎,如果又有相關行業經驗,基本上不需要考慮參加培訓機構了,因為此類應用方向的學習曲線相對單一,整個知識與技能體系相對簡單,技術複雜度和學習成本相對較低,同時上面介紹了網絡上許多免費的教程,足以幫助我們進行後續的學習。我們需要考慮的更多是如何將所學應用到實際工作當中,給工作效率和質量帶來提升。


對於像 AI人工智能、前端應用開發等方向,需要體系化的知識結構,學習曲線複雜,如果通過自學的方式很難構建完整的知識、能力體系,效果也難以保障,容易事倍功半,偏離方向,迷失方向。因此這類方向建議參與培訓的方式來學習。


最後,假如我們是為了調整工作方向(轉行)而選擇學習Python編程的話,雖然我們的主觀動能性能夠促使我們克服困難、排除干擾,但是仍然建議考慮一些客觀存在的因素:如自己所處城市當前相關行業的發展情況現狀以及行業相關人才的用人需求、要求等等。 關於培訓學習,也建議結合上面所提到的, 在培訓機構選擇的同時建議多考慮就業問題:如 結合自身條件及現狀諮詢相關培訓機構,先了解能夠培訓的技能及是否提供相關企業內推機會,機構該專業的就業率、就業薪資情況等等。


軟件測試開發技術棧


零基礎入門Python的話,完全可以,沒有任何難度,畢竟Python設計之初就是面向大眾,降低編程入門的門檻,下面我簡單介紹一下學習Python的過程,感興趣的朋友可以嘗試一下:

01

搭建Python開發環境

首先,最基本的就是搭建Python開發環境,初學入門的話,建議安裝Anaconda,集成了Python解釋器及許多常見第三方庫,自帶有Jupyter Notebook等開發環境,使用起來非常不錯,至於版本2還是版本3,建議3,明年1月起2系列就會停止更新和維護:

02

Python開發軟件

Python環境搭建完成後,就是Python入門,“工欲善其事,必先利其器”,好的開發軟件會起到功半事倍的效果,這裡分享2個非常不錯的Python開發軟件,對於初學者使用來說,非常不錯:

  • Visual Studio Code

這是一個免費、開源、跨平臺的代碼編輯器,完美支持3大操作平臺,運行速度快、佔用內存少,安裝Python插件後,可以直接調試運行Python,自動補全、代碼高亮、語法提示、Git等功能非常不錯,對於初學者使用來說,非常友好,也非常容易學習和掌握:

  • PyCharm

這是一個非常專業的Python開發軟件,在業界非常流行、也非常受歡迎,常見的智能補全、代碼高亮、語法提示等功能,這個軟件都能很好兼容,除此之外,還支持代碼重構、代碼分析、單元測試等高級功能,因此開發效率更高,也更適合大型項目,對於團隊協作和項目管理來說,非常不錯,值得學習和使用:

03

Python基礎入門

Python環境和Python開發軟件選擇好後,就是Python基礎入門,包括常見的模塊、數據類型、函數、類、文件操作等都要熟悉掌握,至於教程的話,網上資料非常多,比較基礎的,像菜鳥教程、廖雪峰官網等都非常不錯,當然,你也可以找一本專業書籍,一邊學習一邊練習,以掌握基本功為準,不要急於求成:

04

Python高級進階

基礎熟悉掌握後,就是Python高級進階,Python可供選擇的方向太多,常見的網絡爬蟲、測試運維、Web開發、數據處理、機器學習等,Python都有廣泛涉及,方方面面都投入精力,顯然是不可能的,選擇一兩個有前景自己又感興趣的方向,堅持下去,多做項目,積累經驗,不斷提升自己:

目前,就分享這麼多吧,Python入門來說,非常容易,主要就是多看多練習,後期提升的話,就是多做項目,積累經驗,網上也有相關教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。


小小猿愛嘻嘻


看了我這一條你也就不用花錢,也不用在網上找其他資料學習了。


python可以說對沒有編程基礎的人特別友好了。自學選python是特別明智的。但學了python到正式工作,肯定是不夠用的,所以最後還是要學java,但會python後,學java就簡單很多了。


c需要敲100行代碼,java只需要50行,python就只需要20行,但就是因為20行,所以並沒有java那麼穩定。


ython學習路線圖—流程篇:

Python 培訓後職業發展路徑

Python 學習路線圖

入門視頻我推薦b站上的,因為太基礎,所以會比較長,並且一開始介紹了一些原理,對於新手很友好。主要我每次看彈幕就會覺得這個說話老師傻屌又可愛,哈哈。

當然百度雲資源也是有的,就在基礎的第一個資源裡。

先說一下每個階段該學的東西。


Python基礎

解決的現實問題:

能夠熟練使用Python技術完成針對小問題的程序編寫。

掌握的核心能力:

1. 掌握Python基礎語法, 具備基礎的編程能力;

2. 建立起編程思維以及面向對象程序設計思想。

要點:

變量、標識符和關鍵字、輸入和輸出、數據類型轉換、條件控制語句和循環語句、容器類型、函數、文件操作、面向對象、異常處理、模塊和包。

相應資源

Python入門教程完整版(懂中文就能學會)

python入門必備指南


Web基礎開發

解決的現實問題:

能夠使用面向對象的程序設計方法, 基於Linux操作系統開發多任務的網絡程序開發。

掌握的核心能力:

1、能夠熟練使用Linux操作系統;

2、掌握網絡編程相關技術,能夠實現網絡間數據通信;

3、掌握程序設計開發中多任務實現方式;

4、能夠熟練掌握MySQL操作相關技術,熟練編寫各種數據庫操作SQL語句,並能夠進行Python與MySQL之間的數據交互;

5、掌握Python中的re模塊的使用,能夠實現對字符串進行復雜模式匹配;

6、掌握Web服務器的工作流程,以及Web框架的實現原理。

要點:

Linux命令、網絡編程、多任務編程、正則表達式、html與css、JavaScript、jQuery、數據庫編程、Python語法進階、靜態Web服務器、mini-Web框架。

相應資源

Linux基礎命令教程豪華版.chm

linux從入門到精通

服務器開發之linux基礎編程

服務器開發之linux系統編程

服務器開發之linux網絡編程


Web-Django框架

解決的現實問題:

更上一級能夠開發主流Web網站,並掌握常見的技術要點;根據實際問題設計出相應數據庫表。

掌握的核心能力:

1、掌握Python Web主流框架-Django的使用;

2、可根據Web框架設計,開發對應的數據庫;

3、可根據業務流程圖,開發Web網站的前後臺業務。

要點:

Django框架、前後端分離模式、VUE進階-組件式開發、Django REST framwork、統計、權限管理、商品數據管理、日誌管理、用戶管理、前後端不分離模式、數據庫-讀寫分離、Django高級第三方模塊、FastDFS分佈式文件系統、Celery異步操作、Vue雙向綁定、Docker 入門、Crontab定時任務、頁面靜態化、在線支付、Nginx+uWSGI部署。

相應資源

Python進階之Django框架


Web-Flask框架

解決的現實問題:

高併發全功能的Web網站開發;提升數據處理響應速度,靈活運用緩存。

掌握的核心能力:

1、掌握Python Web主流框架-Flask的使用;

2、掌握常見的性能優化技術;

3、緩存服務器的操作和設計;

4、異步任務的實現。

要點:

Docker 進階、uWSGI、Nginx進階、性能優化、Flask框架、路由定義及視圖函數、藍圖、SQLAlchemy、Flask-RESTful、手機 APP + PC Web前端、MySQL業務數據存儲、Redis緩存層、第三方對象存儲、RabbitMQ + Celery 異步任務、APSchedule定時任務、http://socket.io及時通訊、Elasticsearch 5.6 搜索+自動補全、RPC+kafka對接推薦系統與AI系統、supervisor進程管理。

相應資源

6節課入門Flask框架web開發


人工智能機器學習編程

解決的現實問題:

利用學習到的科學計算庫對收集到的數據進行數據基本處理,使其符合機器學習算法模型;利用學習到的機器學習算法解決部分實際問題。

掌握的核心能力:

1、掌握數據挖掘基礎工具使用;

2、掌握機器學習中處理數據方法;

3、理解常見機器學習算法原理。

要點:

人工智能概述、數據可視化matplotlib、科學計算庫numpy、科學計算庫pandas、Scikit-learn使用、特徵工程、k-近鄰算法、線性迴歸、嶺迴歸、邏輯迴歸、決策樹、集成學習(Bagging, Boosting)、k-means、不同模型評估方法介紹、模型選擇與調優、模型保存和加載、聚類、分類。

相應資源

0基礎小白也能學會的人工智能課

最簡單快速入門Python機器學習


人工智能基於大數據的推薦系統

解決的現實問題:

能夠實現推薦系統的算法不同場景應用;能夠根據推薦場景業務流完成推薦業務開發。

掌握的核心能力:

1、掌握推薦系統的工作原理和實現流程;

2、掌握推薦系統的算法實現原理以及應用場景;

3、掌握Lambda大數據相關基礎;

4、可實現基於大數據框架的推薦系統搭建;

5、能夠基於推薦業務流完成系統搭建。

要點:

分佈式存儲計算案例、數據倉庫工具hive、spark-sql、spark sql與hive離線分析、ABTest實驗中心、埋點參數設置、推薦服務、緩存服務、實時日誌分析、實時召回集、熱門與新文章、文章畫像構建、用戶畫像構建、文章用戶畫像業務實現、離線召回集介紹、排序模型選擇介紹、spark mllib講解、離線模型評價、評估場景需求

相應資源

雲計算大數據之zookeeper教程


最後更多是實戰了,更多偏向於數據分析:

對企業異常數據進行深入分析,對業務風險指標進行跟蹤分析及優化;搭建業務監控體系,及時發現、排查業務問題,並能提出有效的解決策略或方案;配合項目計劃,負責建模駐場項目,完成數據分析需求及任務;通過大數據算法對數據進行模型的構建、維護、和評估。

掌握的核心能力:

1、熟悉常用數據挖掘算法與模型,熟悉邏輯迴歸、神經網絡、決策樹、聚類等建模方法;

2、熟悉Python、Tableau、SPSS、SAS等多種數據分析工具;

3、熟練使用時間序列、聚類分析、邏輯迴歸、因果分析等統計方法。

要點:

統計學基礎、Python編程數據分析、SPSS數據分析、數據化運營,網絡遊戲市場分析,及電商數據分析,問卷數據分析、CRM、BI理論、數據可視化分析

最後python拓展就是爬蟲和自動化測試運維了,

屬於拓展項目。也是很重要的接近工作的。但前期學習的話還是用不到的。拓展的各種項目、實戰等,建議先把基礎打牢再去學。


最後,上面的資源回覆:“python整套資源”,就可領取咯。

希望上面內容對你有幫助,可以進行分享留言對上面內容進行補充。


黑馬程序員


做為一個幹了十年編程的人來看,我給你的建議是:

1、首先選擇一本經典的python基礎書比如python核心編程(第二版)作為參考數進行詳細閱讀,貴在堅持。

2、除了看書外,要多去嘗試敲寫一些例子程序,從中體會和理解知識點

3、另外可以到博客園或CSDN上去看一些python方面的知識做為補充和擴展

3、可以關注今日頭條上的碼農阿勇,主要分享python編程的方面的知識,視頻比較短,可以充分

利用自己的碎片化時間進行系統學習。

4、可以加一些交流群,和別人去交流,分享和請教

5 最後給總結三條:多看,多寫,多思考

喜歡的朋友可以添加關注,每天分享python相關內容


碼農阿勇


最近Python的確很火,學的人也越來越多,薪資水平也越來越高,所以很多人也都想轉行學Python拿高薪資,下面我就從幾個方面來介紹如何自學吧。

寫在最前面的話

在介紹如何自學Python之前我先想說一段話,這些都是自己的經歷過的。 我覺得你在學習之前Python之前應該先考慮一個問題,自己是否真的適合這個行業,不要被高工資迷惑了。其實當初考慮這個問題主要還是因為身邊的人,上大學的時候身邊有很多同學都參加了培訓機構,當然有很多同學到找到了不錯的工作,也有很多的同學沒能找到工作。畢竟有些人的性格可能本身就不太適合軟件行業,所以我就想以後想轉行的一定要先考慮是否適合這個行業。如果你的性格屬於那種比較被動、比較牴觸新知識、邏輯思維不太擅長。我的建議是你可能不太適合軟件開發,即使你轉行成功瞭如果這些習慣不改,在工作中還是可能會被淘汰,軟件行業競爭很大而且技術更新特別快,基本上是每天都在學習新的技術。

如何學習Python

學習Python目前有兩種方法,自學和參加培訓班。選擇哪種方式我覺得可能需要根據個人的性格特點來決定,如果你屬於做事有很強的目的性和計劃性可以考慮自學,否則建議參加培訓班。關於培訓班,可能很多人都有誤解,說培訓班培訓出來學不到啥,找不到工作,工作之後培訓學到的東西都沒用。如果,你想靠培訓班學的那點知識就能很好的工作,那是不可能的,不然我前面也不會說基本上每天都在學習新技術。培訓班的作用,是帶你進入這個行業,修行在個人,畢竟編程語言之間的特性都是想通的。千萬不要以為報了培訓班就能找到工作,還是要靠自己努力的,平時一定要多敲代碼多學習。

如何自學

  1. 先確定方向,方向很重要,如果沒有方向亂學一通,只能說是在浪費時間。畢竟Python開發也分很多方向的,運維、後臺開發、算法工程師、數據分析、深度學習等。

  2. 在選擇方向的時候,一定要根據自己掌握知識的情況來選擇,不要盲目,最好找先找一個該行業的前輩指導和介紹一下,再選擇。

  3. 方向選擇之後,確定學習路線,這個可以自己在網上搜資料也可以請教該行業的前輩該如何學習,需要學習那些知識。

  4. 路線確定之後一定要開始制定計劃,什麼時候該學什麼,怎麼學,嚴格按照時間表執行。一旦某發生了拖延,可能你的計劃就會被拖的很長。這也是為什麼說要有很強的計劃執行能力。

關於技術方面的推薦我就沒有說太多了,因為方向太多也不好說,上面都是一些自己的個人經歷和體驗。

機器學習之路


找本入門的書看著、計算機上輸入程序運行,多聯繫就是,不會的程序段落貼這裡問。


素食的貓


Python編程,從入門到實踐

推薦這本書


分享到:


相關文章: