共计 1799 个字符,预计需要花费 5 分钟才能阅读完成。
欢迎来到 Python 基础入门 Day43!今天我们将进入 Web 编程入门 ,重点学习使用 Flask 框架快速搭建一个基础的 Web 应用,让你掌握后端开发的第一步。
目录
- Flask 简介与安装
- 第一个 Flask 应用
- 路由与视图函数
- 模板渲染(Jinja2)
- 表单处理与请求方法
- 小结与练习
一、Flask 简介与安装
1.1 什么是 Flask?
Flask 是 Python 中非常流行的轻量级 Web 框架,核心特性:
- 简单易用,上手快
- 灵活、可扩展
- 内置开发服务器和调试器
- 支持模板渲染、路由、表单、数据库等功能
1.2 安装 Flask
在终端执行:
pip install flask
二、第一个 Flask 应用
2.1 创建应用
新建 app.py 文件,输入以下代码:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return "Hello, Flask! Welcome to Day43!"
if __name__ == '__main__':
app.run(debug=True)
2.2 运行应用
终端执行:
python app.py
浏览器访问:http://127.0.0.1:5000/
你会看到:
Hello, Flask! Welcome to Day43!
三、路由与视图函数
3.1 添加多个路由
@app.route('/about')
def about():
return "This is the About page."
@app.route('/contact')
def contact():
return "This is the Contact page."
3.2 动态路由
@app.route('/user/<username>')
def user_profile(username):
return f"Hello, {username}!"
四、模板渲染(Jinja2)
Flask 集成了 Jinja2 模板引擎,用于生成 HTML。
4.1 创建模板
创建 templates 文件夹,新增 index.html:
<!DOCTYPE html>
<html>
<head>
<title>Flask Template</title>
</head>
<body>
<h1>Hello, {{name}}!</h1>
</body>
</html>
4.2 渲染模板
修改 app.py:
from flask import render_template
@app.route('/hello/<name>')
def hello(name):
return render_template('index.html', name=name)
访问 http://127.0.0.1:5000/hello/Python,网页上会显示:
Hello, Python!
五、表单处理与请求方法
5.1 显示表单
创建 templates/form.html:
<!DOCTYPE html>
<html>
<head>
<title>Form Example</title>
</head>
<body>
<h2>Enter Your Name</h2>
<form method="POST">
<input type="text" name="name">
<button type="submit">Submit</button>
</form>
{% if name %}
<h3>Hello, {{name}}!</h3>
{% endif %}
</body>
</html>
5.2 处理表单
修改 app.py:
from flask import request
@app.route('/form', methods=['GET', 'POST'])
def form():
name = None
if request.method == 'POST':
name = request.form.get('name')
return render_template('form.html', name=name)
你可以输入名字并提交表单,页面会显示:
Hello, xxx!
六、小结与练习
今日总结
- 学会了安装并使用 Flask;
- 编写了基础 Web 应用;
- 掌握了路由、动态路由和模板渲染;
- 学习了表单的提交与处理。
今日练习
- 为你的 Flask 应用添加一个
/info路由,显示“About Flask”。 - 创建一个新模板,显示当前日期和时间(可用 Python 的
datetime模块)。 - 实现一个表单,让用户输入年龄,提交后返回:“你今年 X 岁”。
正文完