學了Python可以做什么工作


學了Python可以做什么工作

用 Python 寫爬蟲

據我所知很多初學 Python 的人都是使用它編寫爬蟲程序。小到抓取一個小黃圖網站,大到一個互聯網公司的商業應用。通過 Python 入門爬蟲比較簡單易學,不需要在一開始掌握太多太基礎太底層的知識就可以很快上手,而且很快可以做出成果,非常適合小白一開始想做出點看得見的東西的成就感。

除了入門,爬蟲也被廣泛應用到一些需要數據的公司、平台和組織,通過抓取互聯網上的公開數據,來實現一些商業價值是非常常見的做法。當然這些選手的爬蟲就要厲害的多了,需要處理包括路由、存儲、分布式計算等很多問題,與小白的抓黃圖小程序,復雜度差了很多倍。

Web 程序

除了爬蟲,Python 也廣泛應用到了 Web 端程序,比如你現在正在使用的知乎,主站后台就是基於 Python 的 tornado 框架,豆瓣的后台也是基於 Python。除了 tornado (Tornado Web Server),Python 常用的 Web 框架還有 Flask(Welcome | Flask (A Python Microframework)),Django (The Web framework for perfectionists with deadlines) 等等。通過上述框架,你可以很方便實現一個 Web 程序,比如我認識的一些朋友,就通過 Python 自己編寫了自己的博客程序,包括之前的 zhihu.photo,我就是通過 Flask 實現的后台(出於版權等原因,我已經停掉了這個網站)。除了上述框架,你也可以嘗試自己實現一個 Web 框架。

桌面程序

Python 也有很多 UI 庫,你可以很方便地完成一個 GUI 程序(話說我最開始接觸編程的時候,就覺得寫 GUI 好炫酷,不過搞了好久才在 VC6 搞出一個小程序,后來又輾轉 Delphi、Java等,最后接觸到 Python 的時候,我對 GUI 已經不感興趣了)。Python 實現 GUI 的實例也不少,包括大名鼎鼎的 Dropbox,就是 Python 實現的服務器端和客戶端程序。

人工智能(AI)與機器學習

人工智能是現在非常火的一個方向,AI熱潮讓Python語言的未來充滿了無限的潛力。現在釋放出來的幾個非常有影響力的AI框架,大多是Python的實現,為什么呢?因為Python足夠動態、具有足夠性能,這是AI技術所需要的技術特點。比如基於Python的深度學習庫、深度學習方向、機器學習方向、自然語言處理方向的一些網站基本都是通過Python來實現的。

機器學習,尤其是現在火爆的深度學習,其工具框架大都提供了Python接口。Python在科學計算領域一直有着較好的聲譽,其簡潔清晰的語法以及豐富的計算工具,深受此領域開發者喜愛。

早在深度學習以及Tensorflow等框架流行之前,Python中即有scikit-learn,能夠很方便地完成幾乎所有機器學習模型,從經典數據集下載到構建模型只需要簡單的幾行代碼。配合Pandas、matplotlib等工具,能很簡單地進行調整。

而Tensorflow、PyTorch、MXNet、Keras等深度學習框架更是極大地拓展了機器學習的可能。使用Keras編寫一個手寫數字識別的深度學習網絡僅僅需要寥寥數十行代碼,即可借助底層實現,方便地調用包括GPU在內的大量資源完成工作。

值得一提的是,無論什么框架,Python只是作為前端描述用的語言,實際計算則是通過底層的C/C++實現。由於Python能很方便地引入和使用C/C++項目和庫,從而實現功能和性能上的擴展,這樣的大規模計算中,讓開發者更關注邏輯於數據本身,而從內存分配等繁雜工作中解放出來,是Python被廣泛應用到機器學習領域的重要原因。

科學計算

Python 的開發效率很高,性能要求較高的模塊可以用 C 改寫,Python 調用。同時,Python 可以更高層次的抽象問題,所以在科學計算領域也非常熱門。包括 scipy、numpy 等用於科學計算的第三方庫的出現,更是方便了又一定數學基礎,但是計算機基礎一般的朋友。

圖像處理

這方面不熟,列幾個關鍵詞吧,如有錯誤,請斧正。

keywords : OpenCV, Pillow, PIL

小結

時間問題,暫到這里。基本上可以不負責任地認為,Python 可以做任何事情。

但是,如果你是打算以此為業,我的建議是,不要局限在 「學Python」這樣的思維上。要在技術領域立足,僅僅學會了 Python 的語法是不夠的,你需要很多編程語言之外的基礎知識。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM