細數那些Python的Web框架
- [Django](django/django)
The Web framework for perfectionists with deadlines. https://www.djangoproject.com/
Django是一個開放源代碼的Web應用框架,由Python寫成。採用了MVC的軟體設計模式,即模型M,視圖V和控制器C。它最初是被開發來用於管理勞倫斯出版集團旗下的一些以新聞內容為主的網站的。並於2005年7月在BSD許可證下發布。這套框架是以比利時的吉普賽爵士吉他手Django Reinhardt來命名的。
- [flask](pallets/flask)
A microframework based on Werkzeug, Jinja2 and good intentions http://flask.pocoo.org/
Flask是一個使用Python編寫的輕量級Web應用框架。基於Werkzeug WSGI工具箱和Jinja2 模板引擎。 Flask使用BSD授權。
Flask也被稱為「microframework」,因為它使用簡單的核心,用extension增加其他功能。Flask沒有默認使用的資料庫、窗體驗證工具。然而,Flask保留了擴增的彈性,可以用Flask-extension加入這些功能:ORM、窗體驗證工具、文件上傳、各種開放式身份驗證技術。
- [tornado](tornadoweb/tornado)
Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.http://www.tornadoweb.org/
Tornado全稱Tornado Web Server,是一個用Python語言寫成的Web伺服器兼Web應用框架,由FriendFeed公司在自己的網站FriendFeed中使用,被Facebook收購以後框架以開源軟體形式開放給大眾。
- [bottle](bottlepy/bottle)
bottle.py is a fast and simple micro-framework for python web-applications. http://bottlepy.org/
Bottle是一個非常精緻的WSGI框架,它提供了 Python Web開發中需要的基本支持:URL路由,Request/Response對象封裝,模板支持,與WSGI伺服器集成支持。整個框架的全部代碼約有 4000行,它的核心部分沒有其他任何依賴,只要有Python環境就可以運行。
Bottle適用於小型的Web開發,在應用程序規模比較小的情況下可以實現快速開發。但是由於自身功能所限,對於大型的Web程序,Bottle的功能略顯不足,程序員需要手動管理模塊、資料庫、配置等等,與Pylons等框架相比Bottle的優勢就難以體現出來了。
- [falcon](falconry/falcon)
Falcon is a bare metal Python framework for building high-performance HTTP APIs, app backends, and higher-level frameworks. https://falcon.readthedocs.io/en/stable/
Falcon是一個構建雲API的高性能Python框架,鼓勵使用REST架構風格。
- [sanic](channelcat/sanic)
Python 3.5+ web server thats written to go fast
sanic是一款用python3.5+寫的web framework,用法和flask類似,sanic的特點是非常快
- [pyramid](Pylons/pyramid)
Pyramid web framework https://trypyramid.com/
Pyramid希望能夠做比Flask更大和複雜的應用。因此,它的引導工具會創建一個更大的項目框架
跟別的框架相比,Pyramid的引導工具特別的靈活。它沒有被限制在一個默認應用里;pcreate可以使用任何數量的項目模板。包括我們在上面使用starter模板創建出來的,包含SQLAlchemy和ZODB支撐的項目。在PyPi上,可以找到依賴於Google App Engine,jQuery Mobile,Jinja2 templating,modern frontend frameworks等等的模板。
推薦閱讀: