推薦六個yyds的開源 Python Web 框架
提到 Python 的 Web 框架,第一反應就是老三樣,Django,Flask 和 Tornado。如果按流行度來排名的話,應該也是這個順序。
在 2016 年,發布了一款 Web 框架,叫 Sanic,表現還不錯,應該算是后起之秀。
而 FastAPI 在異步方面表現更加出色,同時更現代,更高效。截止到這篇文章,FastAPI 在 GitHub 上的 star 數量已經有 44k。
Django
項目地址: https://github.com/django/django
Python 中最流行的 Web 框架,功能非常全面,像安全認證,URL Routing,模板引擎,ORM,甚至 Admin 管理后臺,全部包括。
Flask
項目地址: https://github.com/pallets/flask
也是非常流行的一個 Web 框架,它的特定是輕便,靈活,可定制性強。
用戶可以根據自己的需求來添加相應的功能,在保持核心功能簡單的同時,實現功能的豐富與擴展,其強大的插件庫可以讓用戶實現個性化的網站定制,開發出功能強大的網站。
Bottle
項目地址: https://github.com/bottlepy/bottle
一個簡單高效的遵循 WSGI 的微型 Web 框架。說微型,是因為它只有一個文件,除 Python 標準庫外,它不依賴于任何第三方模塊。
這個框架使用的比較少,不過源碼也很少,如果想讀源碼的話,從它入手倒是一個不錯的選擇
Tornado
項目地址: https://github.com/tornadoweb/tornado
Tornado 是一個基于 Python 的 Web 服務框架和異步網絡庫,通過利用非阻塞網絡 I/O, 可以承載成千上萬的活動連接。在需要長連接的場景下使用,效果會更好。
Sanic
項目地址: https://github.com/sanic-org/sanic
2016 年 5 月發布的第一個版本,整體表現還是不錯的,使用的人也越來越多。
Sanic 是 Python3.7+ Web 服務器和 Web 框架,旨在提高性能。它允許使用 Python3.5 中添加的 async/await 語法,可以使代碼有效的避免阻塞從而達到提升響應速度的目的。
FastAPI
項目地址: https://github.com/tiangolo/fastapi
FastAPI 是一個用于構建 API 的現代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于標準的 Python 類型提示。
該框架鼓勵使用 Pydantic 和 OpenAPI (以前稱為 Swagger) 進行文檔編制,使用 Docker 進行快速開發和部署以及基于 Starlette 框架進行的簡單測試。