03.Python百行代码实现点赞系统
3.1 Python百行代码实现点赞系统
# 建立一个服务 需要用一个 web 框架 Flask # pip install Flask from flask import Flask,render_template,request # 导入web框架和模版框架和获取访问请求等模块 app = Flask(__name__) # 基于 Flask 类创建对象 app # 点赞的数据 列表中存放字典 data = [ {'id': 0, 'name':'中秋节', 'num':0 }, {'id': 1, 'name': '春节', 'num': 0}, {'id': 2, 'name': '建军节', 'num': 0} ] # 设置访问路径 @app.route('/index') def index(): return render_template('index.html',data_html = data) # 将列表中数据赋值给 data_html, 传给 index.html # 设置点赞方法 @app.route('/dianzan') def dianzan(): id = request.args.get('id') # 获取网页点击的 id 号 # print(f"想要给 {id} 点赞!!!") data[int(id)]['num'] += 1 # 网页传过来的 id号 是字符串转为数字类型 return render_template('index.html', data_html=data) app.run(debug=True) # 运行框架, debug 支持热加载, 更改内容不需要重新再启动程序
3.2 index.html
创建 templates 目录,在此目录下创建 index.html 文件
<!-- templates 目录下 index.html 文件 --> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>这是一个点赞系统</h1> <!-- 高亮 --> <table border="1"> <!-- 内容展示的边框 --> <tr> <!-- 换行 --> <td>ID</td> <!-- 内容展示 --> <td>节假日</td> <td>点赞数</td> <td>操作</td> {% for i in data_html %} <!-- 前面引用的数据 for循环 --> <tr> <!-- 换行 数据分行展示--> <td> {{ i.id + 1 }} </td> <!-- 列表索引是从 0 开始,便于人类可读, 展示时从 1 开始--> <td> {{ i.name }}</td> <td> {{ i.num }}</td> <td><a href="/dianzan?id={{ i.id }}">点赞数</a></td><!-- 设置点击按钮 ? 是可变--> <tr> {% endfor %} <!-- 数据的for循环结束 --> </tr> </table> </body> </html>
3.3 浏览器访问
使用浏览器访问:http://127.0.0.1:5000/index
———————————————————————————————————————————————————————————————————————————
无敌小马爱学习