10個用於Web開發的最好 Python 框架

Web開發者發表於2015-03-17

  Python 是一門動態、面嚮物件語言。其最初就是作為一門物件導向語言設計的,並且在後期又加入了一些更高階的特性。除了語言本身的設計目的之外,Python標準 庫也是值得大家稱讚的,Python甚至還自帶伺服器。其它方面,Python擁有足夠多的免費資料函式庫、免費的Web網頁模板系統、還有與Web服務 器進行互動的庫、這些都可以設計到你的Web應用程式裡面。在這篇文章裡,我們將為Python Web開發者介紹基於Python的10大Web應用框架。

  CubicWeb

  CubicWeb的最重要的支柱就是程式碼的可重用性。CubicWeb宣揚自己不僅是一個Web開發框架,而且還是一款語義Web開發框架。CubicWeb使用關係查詢語言(RQL Relation Query Language)與資料庫之間進行通訊。

10個用於Web開發的最好 Python 框架

  Zope2

10個用於Web開發的最好 Python 框架

  Zope 2是一款基於Python的Web應用框架,是所有Python Web應用程式、工具的鼻祖,是Python家族一個強有力的分支。Zope 2的“物件釋出”系統非常適合物件導向開發方法,並且可以減輕開發者的學習曲線,還可以幫助你發現應用程式裡一些不好的功能。

  Web2py

10個用於Web開發的最好 Python 框架

  Web2py是一個用Python語言編寫的免費的開源Web框架,旨在敏捷快速的開發Web應用,具有快速、可擴充套件、安全以及可移植的資料庫驅動的應用,遵循LGPLv3開源協議。

  Web2py提供一站式的解決方案,整個開發過程都可以在瀏覽器上進行,提供了Web版的線上開發,HTML模版編寫,靜態檔案的上傳,資料庫的編寫的功能。其它的還有日誌功能,以及一個自動化的admin介面。

  TurboGears

10個用於Web開發的最好 Python 框架

  它是另外一個基於 Python 的 MVC 風格的 Web 應用程式框架。

  TurboGears 開發人員稱這個專案是一個 “大框架(megaframework)”,這是因為它是由現有的子專案構成的。TurboGears 可以幫助將很多主要元件整合在一起:

  • MochiKit:JavaScript 庫
  • Kid:模板語言
  • CherryPy:基本 Web 框架
  • SQLObject:物件關係對映器(ORM)

  Pylons

10個用於Web開發的最好 Python 框架

  Pylons是一個開放原始碼的Web應用框架,使用python語言編寫。它對WSGI標準進行了擴充套件應用,提升了重用性且將功能分割到獨立的模組中。

  Pylons是最新的Web應用框架中的典型,類似於Django和TurboGears。Pylons受Ruby on Rails影響很深:它的兩個元件,Routes和WebHelpers是Rails特性的Python實現。

  Grok

10個用於Web開發的最好 Python 框架

  Grok 是一個為 Python 開發者提供的Web應用開發框架,Grok 的重點是敏捷開發,是一個易用而且功能強大的開發框架,基於 Zope 3 技術。

  Web.py

10個用於Web開發的最好 Python 框架

  Web.py是一個輕量級的開源Python Web框架,小巧靈活、簡單並且非常強大,在使用時沒有任何限制。目前Web.py被廣泛運用在許多大型網站,如西班牙的社交網站Frinki、主頁日平均訪問量達7000萬次的Yandex等。

  Pyramid

10個用於Web開發的最好 Python 框架

  Pyramid也是一款輕量級的開源Python Web框架,是Pylons專案的一部分。Pyramid只能執行在Python 2.x或2.4以後的版本上。在使用後端資料庫時無需宣告,在開發時也不會強制使用一些特定的模板系統。

CherryPy

10個用於Web開發的最好 Python 框架

  CherryPy是一個基於Python的Web使用程式開發框架,它極大地簡化了運用 Python 的web開發人員的工作。它為Python開發人員提供了友好的HTTP協議介面。大家知道,HTTP可是全球資訊網的支柱協議,而CherryPy將HTTP協議簡化成Python API來供Python 開發人員使用,這極大地簡化了Web開發人員對HTTP協議的操作。CherryPy自身內建了一個HTTP伺服器,或者稱為Web伺服器。這樣,對於CherryPy的使用者來說,不用另外搭設Web伺服器就能直接執行 CherryPy應用程式了。實際上,Web伺服器是到達CherryPy應用程式的關口,是所有的HTTP請求和響應的必經之地。因此,可以這樣理解 CherryPy內建的Web伺服器:它是位於處理客戶端與伺服器端之間的一層軟體,用於把底層TCP套按字傳輸的資訊轉換成Http請求,並傳遞給相應 的處理程式;同時,還把上層軟體傳來的資訊打包成Http響應,並向下傳遞給底層的TCP套按字。

  Flask

10個用於Web開發的最好 Python 框架

  Flask是一個輕量級的Web應用框架, 使用Python編寫。基於 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授權。

  Flask也被稱為 “microframework” ,因為它使用簡單的核心,用 extension 增加其他功能。Flask沒有預設使用的資料庫、窗體驗證工具。然而,Flask保留了擴增的彈性,可以用Flask-extension加入這些功 能:ORM、窗體驗證工具、檔案上傳、各種開放式身份驗證技術。

相關文章