Python 現階段三大主流Web框架 Django Tornado Flask 對比
1.Django 主要特點是大而全,集成了很多組件,例如: Models Admin Form 等等, 不管你用得到用不到,反正它全都有,屬於全能型框架
2.Tornado 主要特點是原生異步非阻塞,在IO密集型應用和多任務處理上占據絕對性的優勢,屬於專注型框架
3.Flask 主要特點小而輕,原生組件幾乎為0, 三方提供的組件請參考Django 非常全面,屬於短小精悍型框架
Django 通常用於大型Web應用由於內置組件足夠強大所以使用Django開發可以一氣呵成
Tornado 通常用於API后端應用,游戲服務后台,其內部實現的異步非阻塞真是穩得一批
Flask 通常應用於小型應用和快速構建應用,其強大的三方庫,足以支撐一個大型的Web應用,API服務類項目
Django 優點是大而全,缺點也就暴露出來了,加載項巨大 , 這么多的資源一次性全部加載,肯定會造成一部分的資源浪費,
Tornado 優點是異步,缺點是干凈,連個Session都不支持
Flask 優點是精悍簡單;第三方組建運行穩定性相對較差
Flask 安裝
pip install flask
# 相關依賴的包
Jinja2 模板渲染
MarkupSafe 返回安全標簽 只要flask返回標簽
Werkzeug == uWSGI
第一個程序返回HelloWord
from flask import Flask
# 實例化Flask對象 app=application
app = Flask(__name__)
# app中的route裝飾器 路由
@app.route('/index')
# 和路由綁定的視圖函數
def index():
return 'helloword' # 相當於Django中的HttpResponse
# 啟動服務
app.run()