1、Web應(yīng)用開發(fā)
Python常被用于Web開發(fā),隨著Python的Web開發(fā)框架逐漸成熟,如Django、flask等等,開發(fā)者們可以更輕松地開發(fā)和管理復(fù)雜的Web程序。通過mod_wsgi模塊,Apache可以運行Python編寫的Web程序,舉個最直觀的例子,全球最大的搜索引擎Google,在其網(wǎng)絡(luò)搜索系統(tǒng)中就廣泛使用Python語言。另外,我們經(jīng)常訪問的集電影、讀書、音樂于一體的豆瓣網(wǎng)(如圖1所示),也是使用Python實現(xiàn)的。不僅如此,全球最大的視頻網(wǎng)站Youtube以及Dropbox(一款網(wǎng)絡(luò)文件同步工具)也都是用Python開發(fā)的。
2、自動化運維
Python是標準的系統(tǒng)組件,可以在終端下直接運行Python。有一些Linux發(fā)行版的安裝器使用Python語言編寫,例如Ubuntu的Ubiquity安裝器、RedHatLinux和Fedora的Anaconda安裝器等等。另外,Python標準庫中包含了多個可用來調(diào)用操作系統(tǒng)功能的庫。例如,通過這個軟件包,我們能訪問Windows的COM服務(wù)以及其他Windows API;使用IronPython,我們能夠直接調(diào)用.NetFramework。
3、人工智能
人工智能是現(xiàn)如今非?;鸬囊粋€方向,Python在人工智能領(lǐng)域內(nèi)的機器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)、深度學(xué)習(xí)等方面,都是主流的編程語言。可以這么說,基于大數(shù)據(jù)分析和深度學(xué)習(xí)發(fā)展而來的人工智能,其本質(zhì)上已經(jīng)無法離開Python的支持了。
4、網(wǎng)絡(luò)爬蟲
Python語言很早就用來編寫網(wǎng)絡(luò)爬蟲。Google等搜索引擎公司大量地使用Python語言編寫網(wǎng)絡(luò)爬蟲。從技術(shù)層面上將,Python提供有很多服務(wù)于編寫網(wǎng)絡(luò)爬蟲的工具,例如urllib、Selenium和BeautifulSoup等,還提供了一個網(wǎng)絡(luò)爬蟲框架Scrapy。
5、游戲開發(fā)
很多游戲都是使用C++編寫圖形顯示等高性能的模塊,使用Python或Lua編寫游戲的邏輯,相比Python,Lua的功能更簡單,體積也更小,但Python支持更多的特性和數(shù)據(jù)類型。除此之外,Python可以直接調(diào)用OpenGL實現(xiàn)3D繪制,這是高性能游戲引擎的技術(shù)基礎(chǔ)。事實上,有很多Python語言實現(xiàn)的游戲引擎,例如Pygame、Pyglet等。
6、數(shù)據(jù)庫處理
Python在數(shù)據(jù)庫方面很優(yōu)異,能夠和多種數(shù)據(jù)庫進行銜接,進行數(shù)據(jù)處理,從商業(yè)型的數(shù)據(jù)庫到開放源碼的數(shù)據(jù)庫都供給支持。例如:Oracle,MySQLServer等等。有多種接口能夠與數(shù)據(jù)庫進行銜接,至少包含ODBC。有許多公司采用著Python+MySQL的架構(gòu)。因此,把握了Python使你能夠充分利用面向?qū)ο蟮奶攸c,在數(shù)據(jù)庫處理方面如虎添翼。
7、自動化腳本
在很多操作系統(tǒng)里,Python是標準的系統(tǒng)組件。大多數(shù)Linux發(fā)行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在終端下直接運行Python。有一些Linux發(fā)行版的安裝器使用Python語言編寫,如Ubuntu的Ubiquity安裝器、Red Hat Linux和Fedora的Anaconda安裝器。Gentoo Linux使用Python來編寫它的Portage(包管理系統(tǒng))。Python標準庫包含了多個調(diào)用操作系統(tǒng)功能的庫。通過pywin32這個第三方軟件包,Python能夠訪問Windows的COM服務(wù)及其他WindowsAPI。使用IronPython,Python能夠直接調(diào)用.Net Framework。一般說來,Python編寫的系統(tǒng)管理腳本在可讀性、性能、代碼重用度、擴展性幾方面都優(yōu)于普通的shell腳本。
延伸閱讀1:python的一些知名應(yīng)用
Pylons-Web應(yīng)用框架Zope-應(yīng)用服務(wù)器Plone-內(nèi)容管理系統(tǒng)Django-鼓勵快速開發(fā)的Web應(yīng)用框架Uliweb-國人開發(fā)的輕量級Web框架TurboGears-另一個Web應(yīng)用快速開發(fā)框架Twisted-Python的網(wǎng)絡(luò)應(yīng)用程序框架flask-Python 微Web框架tornado-非阻塞式服務(wù)器Webpy-Python 微Web框架