Python能做什麼?需要什麼學習前提知識,如果要找工作,還需要學習什麼知識?
Web程序Python經常被用於Web開發。比如,通過mod_wsgi模塊,Apache可以運行用Python編寫的Web程序。使用Python語言編寫的Gunicorn作為Web伺服器,也能夠運行Python語言編寫的Web程序。Python定義了WSGI標準應用介面來協調Http伺服器與基於Python的Web程序之間的溝通。一些Web框架,如Django、Pyramid、TurboGears、Tornado、web2py、Zope、Flask等,可以讓程序員輕鬆地開發和管理複雜的Web程序。
Python對於各種網路協議的支持很完善,因此經常被用於編寫伺服器軟體、網路蠕蟲。第三方庫Twisted支持非同步在線編寫程序和多數標準的網路協議(包含客戶端和伺服器),並且提供了多種工具,被廣泛用於編寫高性能的伺服器軟體。另有gevent這個流行的第三方庫,同樣能夠支持高性能高並發的網路開發。
GUI開發
Python本身包含的Tkinter庫能夠支持簡單的GUI開發。但是越來越多的Python程序員選擇wxPython或者PyQt等GUI包來開發跨平台的桌面軟體。使用它們開發的桌面軟體運行速度快,與用戶的桌面環境相契合。通過PyInstaller還能將程序發布為獨立的安裝程序包。
操作系統在很多操作系統里,Python是標準的系統組件。大多數Linux發行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在終端機下直接運行Python。有一些Linux發行版的安裝器使用Python語言編寫,比如Ubuntu的Ubiquity安裝器、Red Hat Linux和Fedora的Anaconda安裝器。Gentoo Linux使用Python來編寫它的Portage軟體包管理系統。Python標準庫包含了多個調用作業系統功能的庫。通過pywin32這個第三方軟體包,Python能夠訪問Windows的COM服務及其它Windows API。使用IronPython,Python程序能夠直接調用.Net Framework。
其他NumPy、SciPy、Matplotlib可以讓Python程序員編寫科學計算程序。有些公司會使用Scons代替make構建C++程序。
很多遊戲使用C++編寫圖形顯示等高性能模塊,而使用Python或者Lua編寫遊戲的邏輯、伺服器。相較於Python,Lua的功能更簡單、體積更小;而Python則支持更多的特性和數據類型。很多遊戲,如EVE Online使用Python來處理遊戲中繁多的邏輯。
YouTube、Google、Yahoo!、NASA都在內部大量地使用Python。OLPC的作業系統Sugar項目的大多數軟體都是使用Python編寫。
職位比較多的是:爬蟲,web開發,數據分析等等。
推薦閱讀:
※Python爬蟲實戰——免費圖片 - Pixabay
※給妹子講python--17函數的基本特徵
※如何零基礎自學入門Python
※Python實踐20-閉包簡介
※Python培訓是運維還是全棧,有什麼區別嗎?
TAG:Python |