【Python】【Flask】抽奖功能

  1. 设定奖项
python 复制代码
PRIZES = ['特等奖', '一等奖', '二等奖', '三等奖', '安慰奖', '谢谢参与']
  1. 设定概率
python 复制代码
PRIZES_PROBABILITIES = [0.01, 0.05, 0.1, 0.2, 0.3, 0.34]
  1. 功能实现

核心代码:

choujiang.py

python 复制代码
@app.route('/choujiang')
def choujiang():
    your_prize = random.choice(PRIZES, p=PRIZES_PROBABILITIES)
    return render_template('choujiang.html', prizes=PRIZES, your_prize=your_prize)

注:此处的 choice 是 numpy.random 下的 choice ,而非内置的 random 下的 choice 。

choujiang.html

html 复制代码
所有奖项 :{{ prizes }}<br>
你的奖项 : {{ your_prize }}
  1. 功能优化

原始代码需要每次刷新才能实现一次抽奖,实际用户不可能如此操作。现增加抽奖链接,点击即可实现一次抽奖。

html 复制代码
所有奖项 :{{ prizes }}<br>
<a href="/choujiang">点击抽奖</a><br>
{{ your_prize}}
  1. 效果展示
  2. 完整代码
    https://download.csdn.net/download/qq_45800521/92553224?spm=1001.2014.3001.5503
相关推荐
Java后端的Ai之路26 分钟前
【Python 教程15】-Python和Web
python
冬奇Lab2 小时前
一天一个开源项目(第15篇):MapToPoster - 用代码将城市地图转换为精美的海报设计
python·开源
灰子学技术4 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰4 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码4 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚4 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂4 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1364 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐5 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
前端摸鱼匠5 小时前
YOLOv8 环境配置全攻略:Python、PyTorch 与 CUDA 的和谐共生
人工智能·pytorch·python·yolo·目标检测