【1】Flask框架简介配置
Python 现阶段三大主流Web框架
1|01、Django Tornado Flask 对比
1.Django 主要特点是大而全,集成了很多组件,例如: Models Admin Form 等等, 不管你用得到用不到,反正它全都有,属于全能型框架
2.Tornado 主要特点是原生异步非阻塞,在IO密集型应用和多任务处理上占据绝对性的优势,属于专注型框架
3.Flask 主要特点小而轻,原生组件几乎为0, 三方提供的组件请参考Django 非常全面,属于短小精悍型框架
Django 通常用于大型Web应用由于内置组件足够强大所以使用Django开发可以一气呵成
Tornado 通常用于API后端应用,游戏服务后台,其内部实现的异步非阻塞很稳
Flask 通常应用于小型应用和快速构建应用,其强大的三方库,足以支撑一个大型的Web应用
Django 优点是大而全,缺点也就暴露出来了,这么多的资源一次性全部加载,肯定会造成一部分的资源浪费
Tornado 优点是异步,缺点是干净,Session不支持
Flask 优点是精悍简单,缺点是你不会!
2|02、Flask 的安装,启动
安装:pip install Flask
启动flask并访问测试
from flask import Flask app = Flask(__name__) @app.route('/') def hello_flask(): return 'Hello Flask!' app.run("127.0.0.1",5000,debug=True)
3|0代码拆分为三部分 :
第一部分
from flask import Flask app = Flask(__name__)
导入安装好的flask包,通过flask包导入Flask类,Flask类即为Flask的核心,实例化这个Flask类的到一个实例化对象app。
__name__
这个特殊的参数:Python会根据所处的模块来赋予__name__
变量相应的值,对于我们的程序来说(app.py),这个值为app。
@app.route('/') def hello_flask(): return 'Hello Flask!'
@app.route('/')
就是用来匹配url的,在flask里面是以装饰器来实现的,装饰器引用的也是上面实例化核心类出来的对象。
如果视图函数匹配到了路由就会触发视图函数执行,并且return返回具体的数据。
第三部分
if __name__ == '__main__': app.run()
app.run()
在内部定义了默认的 ip+端口为127.0.0.1:5000,并且调用了werkzeug.serving创建了一个开发服务器(由依赖包Werkzeug提供),其内部就是做了一个循环监听的功能以便交互.
关键词:app.run()
实现了flask
程序在开发环境下运行起来,并且默认ip和端口是127.0.0.1:5000
。
右键运行
浏览器输入http://127.0.0.1:5000/