【Python】Flask 快速入门
Flask 介绍
Flask 是一个轻量级的 Python Web 框架,非常适合快速开发和小型应用。
官网:https://flask.palletsprojects.com/en/3.0.x/
中文文档:https://dormousehole.readthedocs.io/en/latest/
教程:https://www.runoob.com/flask/flask-tutorial.html
Flask 框架
Flask 安装
安装 Flask:
pip install flask
Flask 项目
1. 创建一个最小的 Flask 应用(app.py):
新建一个项目目录 flask01_helloworld
新建一个flask01_helloworld/app.py文件
# 导入Flask from flask import Flask # 创建Flask应用对象 # __name__ 对应当前文件名:app.py # 即app.py所在的目录就是项目目录 app = Flask(__name__) # 路由route + 视图函数hello_world @app.route('/') def hello_world(): # 响应:返回浏览器的数据 return 'Hello World!' # 启动方式 # 在app.py文件目录控制台,运行命令:python app.py # 主函数 if __name__ == '__main__': # 启动服务器 app.run()
2. 运行应用:
在项目名目录 flask01_helloworld 运行命令
python app.py
访问 http://127.0.0.1:5000/ 查看结果。
注意:如果python解析器安装目录上由空格,可能调试启动报错
注意:如果PyCharm安装目录上有空格,可能调试启动报错
Flask 服务响应
编辑文件app.py
# 导入Flask from flask import Flask, render_template, jsonify # 创建Flask应用对象 # __name__ 对应当地文件名:app.py # 即app.py所在的目录就是项目目录 app = Flask(__name__) # 路由route + 视图函数hello_world @app.route('/') def hello_world(): # 响应:返回浏览器的数据 return 'Hello World!' @app.route('/index') def index(): # 响应:字符串 return "index 首页" @app.route('/json') def json(): # 模板渲染 # 响应:json字符串 return jsonify({'name': '法外狂徒张三', 'age': 18}) @app.route('/html') def html(): # 模板渲染 # 响应:html模板 return render_template('index.html', name='法外狂徒张三') # 启动方式 # 在app.py文件目录控制台,运行命令:python -m flask run # 主函数 if __name__ == '__main__': # 启动服务器 # debug 是否开启调试模式,开启后修改过python代码会自动重启 # port 指定服务器端口,默认是5000 # host 可访问主机,默认是127.0.0.1(只能本机访问),指定为0.0.0.0,所有IP均能访问 app.run(host='0.0.0.0', port=5000, debug=True)
在项目目录下,新建文件 templates/index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>首页</title> </head> <body> <h1>Index</h1> <p>name: {{ name }}</p> </body> </html>
1. flask响应普通字符串
访问地址:http://127.0.0.1:5000/index
2. flask响应json字符串
访问地址:http://127.0.0.1:5000/json
响应头也是json类型
3. flask响应html-模板渲染
访问地址:http://127.0.0.1:5000/html