1. 程式人生 > >一個從事Python多年的全棧工程師給你分析為什麼學Python!

一個從事Python多年的全棧工程師給你分析為什麼學Python!

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全棧開發工程師(10k-20K)

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

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

Python大資料工程師(15K-30K)

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

Python架構師(20k-40k)

目前應用最多的:全棧開發、資料分析、運維開發,大家知道他們分別的要求是什麼嗎?

想要知道的可以加群:725479218