Flask 入门1:一个简单的 Web 程序

1. 关于 Flask

Flask诞生于2010年, Armin Ronacher的一个愚人节玩笑。不过现在已经是一个用python语言基于Werkzeug工具箱编写的轻量级web开发框架,它主要面向需求简单,项目周期短的小应用。

Flask本身相当于一个内核,其他几乎所有的功能都要用到扩展,都需要用第三方的扩展来实现。用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。你可以选择MySQL,也可以用NoSQL。其 WSGI 工具箱采用 Werkzeug(路由模块),模板引擎则使用 Jinja2 。

虽然Flask不是最出名的框架,但是Flask应该算是最灵活的框架之一,这也是Flask受到广大开发者喜爱的原因。

2. 一个简单的 Web 程序

main.py:

python 复制代码
from flask import Flask

app = Flask(__name__)


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


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

可能会有如下警告:

python 复制代码
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.

解决方法:https://blog.csdn.net/JineD/article/details/132250043

3. 也可以直接运用视图模板.

index.html:

python 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1>Hello World</h1>
</body>
</html>

记住要放入相应文件夹中:

main.py:

python 复制代码
from flask import Flask, render_template

app = Flask(__name__)


@app.route('/')
def hello_world():
    return render_template('index.html',title = 'demo')


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

4. 增加路由

main.py :

python 复制代码
from flask import Flask, render_template

app = Flask(__name__)


@app.route('/')
def hello_world():
    return render_template('index.html', title='demo')


@app.route('/services')
def services():
    return 'Service'


@app.route('/about')
def about():
    return 'About'


if __name__ == '__main__':
    app.run(debug=True)
相关推荐
知识浅谈27 分钟前
基于Dify构建本地化知识库智能体:从0到1的实践指南
后端
网络安全打工人32 分钟前
CentOS7 安装 rust 1.82.0
开发语言·后端·rust
菜鸟学Python44 分钟前
Python web框架王者 Django 5.0发布:20周年了!
前端·数据库·python·django·sqlite
梦兮林夕1 小时前
04 gRPC 元数据(Metadata)深入解析
后端·go·grpc
pe7er1 小时前
RESTful API 的规范性和接口安全性如何取舍
前端·后端
旧时光巷2 小时前
【机器学习-4】 | 集成学习 / 随机森林篇
python·随机森林·机器学习·集成学习·sklearn·boosting·bagging
山风呼呼2 小时前
golang--通道和锁
开发语言·后端·golang
Ice__Cai2 小时前
Django + Celery 详细解析:构建高效的异步任务队列
分布式·后端·python·django
阿华的代码王国2 小时前
【Android】卡片式布局 && 滚动容器ScrollView
android·xml·java·前端·后端·卡片布局·滚动容器
MediaTea2 小时前
Python 库手册:doctest 文档测试模块
开发语言·python·log4j