flask框架(一)

一、初识flask(三大主流框架之一:django、flask、tornado)

	a:web服务(wsgi)   b:模板   	 c:orm
django:属于同步框架
	a:wsgiref自己写的  b:自己写的  c:自己写的
flask:同步框架
	a:werkzeug		 b:jinja2自己写的   c:别人写的
tornado:属于异步框架
	a:自己写的         b:自己写的    c:自己写的

1.什么是Flask:Flask是一个python编写的web框架,只是一个内核,默认依赖2个外部库:jinja2模板引擎和WSGI工具集--Werkzeug。

2.安装flask:

pip install flask

3.创建Flask程序

img

项目目录详解:

static文件夹:用于存放各种静态文件css、js、图片等等

templates文件夹:用于存在html模板文件

app.py:为我们的主文件,启动项目需要启动该文件

注意:app.py文件的名字我们可以自由命名

主文件app.py文件代码

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello_world():
    return 'Hello World!'


if __name__ == '__main__':
    app.run()

代码拆为三部分:

第一部分

from flask import Flask

app = Flask(__name__)

导入我们安装好的flask包,通过flask包导入Flask类,Flask类就是Flask的核心,实例化这个Flask类得到一个实例化对象app。

__name__这个特殊参数:python会根据所处的模块来赋予__name__变量相应的值,对于我们的程序来说(app.py),这个值是app。

第二部分

@app.route('/') # 路由
def hello_world():
    return 'Hello World!'

@app.route()就是来匹配路由的,在flask中用装饰器来实现,这是一种写路由的方式,后面我们还会介绍另外一种方式。

路由下面跟的就是视图函数,路由匹配上就会执行视图函数。

第三部分

if __name__ == '__main__':
    app.run()

app.run()实现了flask程序在开发环境下运行,默认ip和端口是127.0.0.1:5000

三部分代码串讲

导入Flask的核心类实例化对象app,然后app作为装饰器使用匹配url分发给下面的视图函数,然后执行该页面会触发app调用run()方法运行整个项目。

强调注意:(******)

我们以后创建flask项目不要用pycharm自带的flask快捷方式创建,真实的生产环境建议直接创建一个空的python项目。