Python學習如何下手?看完本文後你能明白60%
你覺得Python真的好嗎?或許你在漫天的宣傳中看到了這些:
接近英語的簡單語法;
開發環境簡單,能打字就能寫代碼;
眾多的第三方庫;
解釋執行,不需要編譯;
跨平台,方便移植;
但是作為一個負責任的假程序媛,要跟你說的是:就算再簡單的語言,也得學才會會,不要在好不好,真的好不好這些事情上下功夫,要在怎麼學如何學上下功夫。
那麼,言歸正傳,我們來看看Python這個神奇的語言。
第一部分:各個領域應用的語言。
大家看這個內容,其實你很明顯發現,其實各個語言都有他的用處。我們可以說Python是應用最廣的。但是暫時還是不能說它是全能的,因為他也有它的短板,但是對於一般的小公司和小項目而言,是很難得的全能。
現在有個很奇怪的現象,就是大家把Python神話了。Python作為一門語言,確實有他的優勢。但是建議大家在學好這個語言的同時,要學第二門語言,這樣未來對大家有好的發展。
第二環節:Python工程師在企業裡面的定位是什麼?
四個重要的定位:驗證演算法、快速開發、測試運維、數據分析。
1、驗證演算法:就是對我們公司一些常見設計演算法或者公式的驗證,公式代碼化。
2、快速開發:這個大家應該都比較熟悉,快速開發,就是用成熟框架,更少的代碼來開發網站,Python在網站前後台有大量的成熟的框架,如django,flask,bottle,tornado,flask和django的使用較多,國內用Python開發的網站有:知乎、豆瓣、扇貝、騰訊、阿里巴巴;
3、測試運維:做運維同學應該清楚,在Linux運維工作中日常操作涵蓋了監控,部署,網路配置,日誌分析,安全檢測 等等許許多多的方面,無所不包。python可以寫很多的腳本,把「操作」這個行為做到極致。與此同時,python在伺服器管理工具上非常豐富,配置管理(saltstack) 批量執行( fabric, saltstack) 監控(Zenoss, nagios 插件) 虛擬化管理( python-libvirt) 進程管理 (supervisor) 雲計算(openstack) ...... 還有大部分系統C庫都有python綁定。
4、數據分析:Python有三大神器:numpy,scipy,matplotlib,其中numpy很多底層使用C語言實現的,所以速度很快,用它參加各種數學建模大賽,完全可以替代r語言和MATLAB。spark,Hadoop都開了Python的介面,所以使用Python做大數據的mapreduce也非常簡單,加上py對資料庫支持都很好,或者類似sqlalchemy的orm也非常強大好用。
在結束這個部分之前,大家有沒有一個疑問:為什麼爬蟲沒有中重點講?
其實這裡給大家重點說一下,如果你要學好Python,僅僅停留在爬蟲上,這個是很不靠譜的。Python 寫爬蟲的教程網上一抓一大把,據大家所知很多初學 Python 的人都是使用它編寫爬蟲程序。小到抓取一個小黃圖網站,大到一個互聯網公司的商業應用。通過 Python 入門爬蟲比較簡單易學,不需要在一開始掌握太多太基礎太底層的知識就可以很快上手,而且很快可以做出成果,非常適合小白一開始想做出點看得見的東西的成就感。
除了入門,爬蟲也被廣泛應用到一些需要數據的公司、平台和組織,通過抓取互聯網上的公開數據,來實現一些商業價值是非常常見的做法。
當然這些選手的爬蟲就要厲害的多了,需要處理包括路由、存儲、分散式計算等很多問題,與小白的抓黃圖小程序,複雜度差了很多倍。
第三部分:python的崗位,薪資,及技能要求
Python崗位有哪些呢?主要的崗位有這些:
Python全棧開發工程師(10k-20K)
Python運維開發工程師(15k-20K)
Python高級開發工程師(15k-30K)
Python大數據工程師(15K-30K)
Python機器學習工程師(15k-30K)
Python架構師(20k-40k)
目前應用最多的:全棧開發、數據分析、運維開發,大家知道他們分別的要求是什麼嗎?
我們來看三個崗位要求:
崗位1:任職要求
1.計算機、軟體相關專業本科或以上學歷,3年以上工作經驗;
2.熟悉python、JS開發語言;
3.具有MySQL資料庫設計與優化能力,熟悉mongoDB、mc、redis等一種以上;
4.熟悉Linux/Unix,能進行shell編程;
5.具有良好的學習能力,時間和流程意識,溝通能力、團隊合作
崗位定義:Python運維開發
崗位2:職位要求
1,熟悉 Python 編程;
2,熟悉 Linux 系統;
3,熟悉 shell 編程;
4,了解 django/web.py/flask 框架一種及以上;
5,有一定的 Web 後端開發經驗,熟悉前後端分離的開發模式
熟悉關係型資料庫的使用與基本設計優化方法,了解常見的 NoSQL 資料庫如MongoDB, Redis等;
6,良好的編碼風格及測試習慣
加分項:
在 GitHub 上有開源項目
崗位定義:Python全棧開發
崗位3:任職資格
1、具有python開發數據處理軟體的經驗;
2、精通Python,掌握numpy,scipy,matplotlib,pandas等數據處理方面常用的第三方python庫;
3、熟悉至少一種Sql資料庫 (mysql/ sqlserver/oracle);
4、熱愛編程、具有良好的代碼風格;
5、做事具有條理性,具有良好的自學能力、分析問題以及解決問題的能力。
崗位定義:Python數據分析
那麼,大家來看看,這三個崗位基本要求裡面,有哪些共性和不同?
第一層:python的基本語法和標準庫
既然你要會python開發,那麼語法基礎和庫是最基本的。
第二層:Linux基礎
全棧和運維涉及linux伺服器的操作,那需要shell編程和linux基礎操作的基礎能力。數據分析其實就沒有這一層,涉及是數據採集,也就是爬蟲。全棧對linux基礎要求少一些,而運維需要更多,還需要一些DNS/DHCP之類的,很多企業也需要一定的運維工作年限。
第三層:資料庫操作
資料庫操作:SQL、Nosql,數據的儲存和處理,就是常見的增刪改查。
第四層:web前端
前端的實現,包括web前端技能,了解或熟悉HTML、CSS、Javascript,Bootstrap,jq,nodejs。全棧就不說了,運維開發涉及到可視化的界面。
第五層:基礎python的框架和庫
基礎python的框架和庫做各種實現,需要開發一個網站或者做一個自動化運維監控,數據分析師基於一些可視化的庫和數據分析的庫。
第六層:演算法設計和求職準備
學一個技術和進階的核心是演算法設計,最重要的是:求職
最後一個部分:說說薪資和城市
全國python就業形勢分析:招聘待遇,工資20000-29999佔比最多,達40%。經驗要求,3-5年工作經驗要求的佔比最多,達71%;學歷要求,本科學歷要求的佔比最多,達76%。該數據僅供參考
Python工資按工作經驗統計,其中0-2年工資¥13060,應屆畢業生工資¥4210,3-5年工資¥15220,6-7年工資¥23860,8-10年工資¥25220,10年以上工資¥14170,該數據僅供參考。
以上就是關於Python職業需求,薪資崗位以及常見職位的一個分析,歡迎大家留言和討論。
為了方便大家學習,我建立了一個Python交流群,目前群內已經有350個小夥伴,學習寂寞的小夥伴不妨一起來玩~群號:475035830
你想更深入了解學習Python知識體系,你可以看一下我們花費了一個多月整理了上百小時的幾百個知識點體系內容:
【超全整理】《Python自動化全能開發從入門到精通》筆記全放送
推薦閱讀:
※17個新手常見Python運行時錯誤
※Python從零開始系列連載(3)——jupyter的常用操作(中)
※Python從零開始系列連載(19)——Python特色數據類型(列表)(下)
※60分鐘用Django寫一個Python個人博客
※Python 文本解析器