自學Python需要怎樣的基礎和準備
雖然國內大學開設Python的不多,但並不能說Python這門語言不重要。很多參加過數學建模競賽的同學可能領教過Python在科學計算領域的威力了。但被譽為「膠水語言」的Python在計算機、互聯網領域還有更為廣闊的用途!而且Python與C、C++、C#、Java並稱為目前世界上主流的5種編程語言;在數據分析、雲計算系統管理、人工智慧等領域是當之無愧的第一語言,在web、遊戲腳本、機器人集物聯網開發領域也有不俗的表現。
對於希望自學Python的同學在著手學習之前可以對自己的知識結構和未來的職業規划進行一次自我評估。如果評估結果良好,入門Python也就沒有想像中那麼難了。閑言少敘,切入正題!筆者認為,適合學習Python的同學應具備以下幾種關鍵素質:
1、有較強的邏輯思維能力
是的,幾乎所有編程語言的學習都離不開較強的邏輯思維能力,因為編程語言是人與計算機的對話,任何歧義和差錯都會影響最終的運行效果;
2、有較強的數理專業背景
學習Python最理想的專業有數學、統計學、物理學、計算機科學等專業,因為Python語言所操作的對象很可能是大數據收集與分析,以及AI開發領域,有以上的學科背景會對今後的發展有很好的優勢;
3、有豐富的運維經驗
可能很多學計算機的同學在畢業之後從事了伺服器、後台管理的運維工作,這既有優勢、也有劣勢。所謂優勢就是有現成的成品擺在你面前,你在做運維的過程中會對產品開發理解更加充分,然而劣勢就在於對自身的技術提高幫助可能比較有限。這時學Python,更在於從運維轉開發,這也是對自己職業生涯的一種新規劃;
4、從事web全棧開發工作
以前開發web,Java是主角,但如今越來越多的web開發開始青睞於Python,究其原因其實也是因為網路數據量的日益龐大以及人工智慧的普及,所以精通Python語言對於從事web全棧開發將有積極的影響。
具備學習Python的必要條件之後,就可以開始著手分階段和步驟地系統學習
1、首先要學好Linux
Linux是作為開發者必須要掌握的操作平台,在這個平台上無論是開發web項目,運行SQL資料庫還是部署爬蟲、大數據分析、以及AI開發,都可以很好的實現;
2、掌握Python基礎
作為一門編程語言的學習,大概可以分為幾個部分:編程語法、面向對象的編程思想、常用設計模式、常用排序演算法,這些內容展開有很多,在此不一一贅述;
3、掌握資料庫SQL
內容有關係型資料庫表的設計、增刪改查以及SQL語句的編寫、SQL和NoSQL資料庫的使用場景和設計難點、Python對資料庫的連接;
4、熟悉一些前端的知識
主要是HTML、CSS、JavaScript和框架,了解時下流行的網頁風格和特效;
5、了解web全棧開發
提醒大家,重點是掌握Django框架,以此來了解如何開發一個完備的企業級網站;
6、掌握人工智慧(爬蟲及搜索)
內容包括HTTP調試器用法、將爬蟲抓取的數據建立索引並搜索、單機或分散式的索引引擎;
7、掌握大數據分析初步
內容包括分散式文件系統HDFS、分散式資源管理框架Yarn、搭建分散式消息隊列Kafka、分散式計算框架Spark;
8、認識機器學習原理
建立機器學習思想、機器學習常用演算法、Python做機器學習常用模塊、海量數據基於分散式集群下做機器學習常用框架等;
9、了解深度學習是什麼
這一部分比較前沿,比如深度學習框架TensorFlow等內容。
說了這麼多最後還是要提示大家最重要的兩點:
第一、英語基礎不好的同學要考慮恢復你的「晨讀制度」,因為Python也是一門近乎生活化的編程語言,不是背會幾個常用單詞就可以搞定的。當然,編程的專業辭彙也必須要熟練,這樣在學習以及日後工作的時候不會太窘迫;
第二、多敲代碼!僅僅看會書、看懂視頻是不夠的。沒有一定的代碼量作為積累,做項目的時候很難有一個清晰順暢的思路。
※Python裝飾器用法雖然簡單,其原理卻難住了一幫老程序員
※多迪技術講師帶你了解如何入門Python爬蟲的方法?
TAG:Python |