flask——1:Hello,Flask!

一,创建Flask项目

我这里使用的是pycharmpro版,使用community版需要先创建虚拟环境。
在这里插入图片描述
创建后,项目结构如下:
在这里插入图片描述
安装flask的同时还安装了flask所依赖的包:
在这里插入图片描述

二,Hello Flask

打开app.py,这是一个最小化的flask应用:
在这里插入图片描述
接下来将对这一个程序进行解释,从而初步了解flask框架。

1,创建程序实例

第一行:

from flask import Flask

flask包导入Flask类, 这个类表示从flask框架中引入了Flask对象。其中:

  • flask包在创建flask项目时创建。
  • Flask对象用于创建程序实例,因为web服务器使用WSGI将所有请求都转交给这个对象进行处理。

第二行:

app = Flask(__name__)

__name__作为参数交给Flask对象,将该对象实例化为app。其中:

  • 使用特殊参数__name__,Python会根据所处的模块来赋予__name__相应的值——所在模块的本地名称,即这里的“app”。

2,注册路由

只有定义了处理函数并能将请求映射到该函数,才能完成对请求的处理。

第六行:

@app.route('/')

这就能完成这个映射(在web应用程序中也可以叫路由):将URL规则与处理函数进行关联。其中:

  • @app.route()装饰器用于完成上述的关联——注册路由。
  • '/'就是一个URL规则,即根地址。访问这个地址就会触发紧相邻的下一行的函数。

第七、八两行:

def hello_world():
    return 'Hello World!' 

这就是一个请求处理函数,在用户访问根地址后返回一段内容。其中:

  • return是必须的,因为一个视图函数必须在处理完一个请求后做出一个响应。
  • 可以给一个视图关联多个URL,只需按期望的顺序添加 @app.route() 装饰器就行。当然也能在URL中添加参数。如下:
@app.route('/')
@app.route('/hello/<name>')
def hello_world(name):
    return 'Hello %s!' % name

3,运行开发服务器

flask是自带开发服务器的,所需的运行环境可在pycharm中进行配置:
在这里插入图片描述
在这里插入图片描述
第十二、十三行:

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

让开发服务器能运行程序。其中:

  • if __name__ == '__main__':告知开发服务器直接以脚本形式运行本文件。
  • app.run()真正实现程序运行,直接在程序实例app上调用 Flask 对象的属性和方法来实现相关功能。
  • 记得在运行环境中打开调试模式。

在这里插入图片描述

在这里插入图片描述