今天吃什么小游戏(基于Flask框架搭建的简单应用程序,用于随机选择午餐选项。代码分为两部分:Python部分和HTML模板部分)

今天吃什么

一个简单有趣的外卖点饭网站,不知道吃什么的时候,都可以用它自动决定你要吃的,包括各种烧烤、火锅、螺蛳粉、刀削面、小笼包、麦当劳等午餐全部都在内。点击开始它会随意调出不同的午餐,点击停止就会挑选一个你准备要吃的,如果没有想吃的,你还能支持自定义添加午餐。

from flask import Flask, render_template, request
import randomapp = Flask(__name__)lunch_options = ["烧烤","火锅","螺蛳粉","刀削面","小笼包","麦当劳"
]@app.route('/')
def index():return render_template('index.html')@app.route('/get_lunch_option')
def get_lunch_option():lunch_option = random.choice(lunch_options)return lunch_option@app.route('/add_lunch_option', methods=['POST'])
def add_lunch_option():new_option = request.form['new_option']lunch_options.append(new_option)return '添加成功!'if __name__ == '__main__':app.run(debug=True)

上述代码创建了一个Flask应用程序,并定义了两个路由。index路由渲染了一个HTML模板,展示了一个“开始”按钮和一个“停止”按钮。get_lunch_option路由会在点击“停止”按钮后被调用,它会从午餐选项列表中随机选择一个,然后将其返回给前端。添加了一个新的路由add_lunch_option,用于接收前端传递的自定义午餐选项,并将其添加到lunch_options列表中。通过POST请求发送数据,使用request.form来获取提交的表单数据。

<!DOCTYPE html>
<html>
<head><title>今天吃什么?</title>
</head>
<body><h1>今天吃什么?</h1><p>点击“开始”按钮,让我们为您随机选择午餐。</p><button id="start-btn" onclick="start()">开始</button><button id="stop-btn" onclick="stop()">停止</button><h2 id="lunch-option"></h2><h3>添加自定义午餐选项:</h3><form id="add-form" onsubmit="addOption(event)"><input type="text" name="new_option" required><input type="submit" value="添加"></form><script>var intervalId = null;function start() {intervalId = setInterval(getLunchOption, 100);}function stop() {clearInterval(intervalId);var lunchOption = document.getElementById("lunch-option").textContent;alert("您可以去吃 " + lunchOption + " 了!");}function getLunchOption() {fetch('/get_lunch_option').then(response => response.text()).then(lunchOption => {document.getElementById("lunch-option").textContent = lunchOption;});}function addOption(event) {event.preventDefault();var form = document.getElementById("add-form");var formData = new FormData(form);fetch('/add_lunch_option', {method: 'POST',body: formData}).then(response => response.text()).then(message => {alert(message);form.reset();});}</script>
</body>
</html>

上述代码使用JavaScript编写了一些函数来处理“开始”和“停止”按钮的点击事件。当点击“开始”按钮时,它会每100毫秒调用一次getLunchOption函数,该函数通过AJAX请求调用后端的get_lunch_option路由。在收到响应后,它会将午餐选项显示在页面上。当点击“停止”按钮时,它会停止调用getLunchOption函数,并弹出一个提示框,告诉用户今天要吃什么。添加了一个表单和一个文本框,用于输入自定义午餐选项。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/625383.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何用ArcGIS制作城市用地适应性评价

01概述 “城市用地适宜性评价是城市总体规划的一项重要前期工作&#xff0c;它首先对工程地质、社会经济和生态环境等要素进行单项用地适宜性评价&#xff0c;然后用地图叠加技术根据每个因子所占权重生成综合的用地适宜性评价结果&#xff0c;俗称“千层饼模式”。 做用地适…

git 删除 submodule 子模块的步骤

实验有效&#xff0c;这里删除了两个 submodule。 1, 执行删除 submodule mkdir tmp1 && cd tmp1 && git clone --recursive ssh://gitaaa.bbb.ccc.git \ && cd ccc/ && git checkout -b abranch_01 \ && git submodule deinit -f…

2024年腾讯云新用户优惠云服务器价格多少?

腾讯云服务器租用价格表&#xff1a;轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年&#xff0c;540元三年、2核4G5M带宽218元一年&#xff0c;2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月&#xff0c;云服务器CVM S5实例2核2G配置280.8元一年…

统计学-R语言-2.2

文章目录 前言导入.RData文件方式1方式2方式3 导入程序包方式一方式二 总结 前言 本篇文章是将上篇得软件安装完&#xff0c;对其部分功能进行介绍。 导入.RData文件 在我们日常练习时会有.RData文件导入&#xff0c;并对其进行分析&#xff0c;下面是两种方导入.RData文件。…

在windows11系统上利用docker搭建ubuntu记录

我的windows11系统上&#xff0c;之前已经安装好了window版本的docker&#xff0c;没有安装的小伙伴需要去安装一下。 下面直接记录安装linux的步骤&#xff1a; 一、创建linux容器 1、拉取镜像 docker pull ubuntu 2、查看镜像 docker images 3、创建容器 docker run --…

Java SE入门及基础(15)

Java 中的标号&#xff08;标签 label&#xff09; 1. 语法规则 标号名称 : 循环结构 2. 作用 标号的作用就是给代码添加一个标记&#xff0c;方便后面使用。通常应用在循环结构中&#xff0c;与break 语句配合使用 3. 应用场景 有如下菜单&#xff1a; 实现其中返回主菜…

RAG常见七大坑

论文题目&#xff1a;《Seven Failure Points When Engineering a Retrieval Augmented Generation System》 论文地址&#xff1a;https://arxiv.org/pdf/2401.05856.pdf 这篇论文主要探讨了构建检索增强生成系统&#xff08;Retrieval Augmented Generation, RAG&#xff09;…

idea写sql语句快捷键提醒,mapper注解开发,mybatis

第一步&#xff1a;注入SQL语言 1.显示上下文操作&#xff08;没有这个选项的话就选中sql然后直接alt回车快捷键&#xff09;2.注入语言或引用 3.mysql 第二步&#xff1a;配置MySQL数据库连接 1.首先点击侧边的数据库&#xff0c;再点击上面的加号 2.点击数据源&#xff…

低频信号发生器

前言 最近我快期末考试了&#xff0c;有点忙着复习。没时间写文章&#xff0c;不过学会了焊接 挺开心的所以买几套。 焊得怎么样这就是我们今天故事的主角“低频信号发生器”&#xff08;由于要用到所以这是购买链接&#xff09; 好&#xff0c;故事开始&#xff1a; 如何将…

手写一个starter来理解SpringBoot的自动装配

自动装配以及简单的解析源码 自动装配是指SpringBoot在启动的时候会自动的将系统中所需要的依赖注入进Spring容器中 我们可以点开SpringBootApplication这个注解来一探究竟 点开这个注解可以发现这些 我们点开SpringBootConfiguration这个注解 可以发现实际上SpringBootApp…

【网络取证篇】Windows终端无法使用ping命令解决方法

【网络取证篇】Windows终端无法使用ping命令解决方法 以Ping命令为例&#xff0c;最近遇到ping命令无法使用的情况&#xff0c;很多情况都是操作系统"环境变量"被改变或没有正确配置导致—【蘇小沐】 目录 1、实验环境&#xff08;一&#xff09;无法ping命令 &a…

Zabbix的多场景应用

1 zabbix更多用法 1.1 自动注册方式 zabbix自动发现 zabbix server服务端主动发现zappix agent客户端 1&#xff09;在【配置】-【自动发现】创建 发现规则&#xff0c;设置 IP范围 检查的键值system.uname 2&#xff09;在【配置】-【动作】-【发现动作】创建 动作&#x…

Leetcode1441.用栈操作构建数组

文章目录 题目原题链接思路代码 题目 给你一个数组 target 和一个整数 n。每次迭代&#xff0c;需要从 list { 1 , 2 , 3 …, n } 中依次读取一个数字。 请使用下述操作来构建目标数组 target &#xff1a; “Push”&#xff1a;从 list 中读取一个新元素&#xff0c; 并将其…

【面试突击】Spring 面试实战

&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308; 欢迎关注公众号&#xff08;通过文章导读关注&#xff1a;【11来了】&#xff09;&#xff0c;及时收到 AI 前沿项目工具及新技术 的推送 发送 资料 可领取 深入理…

2024年腾讯云服务器配置价格表(机型/磁盘/宽带/CPU)

腾讯云服务器租用价格表&#xff1a;轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年&#xff0c;540元三年、2核4G5M带宽218元一年&#xff0c;2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月&#xff0c;云服务器CVM S5实例2核2G配置280.8元一年…

SpringBoot教程(二) | 创建SpringBoot项目

SpringBoot教程(二) | 创建SpringBoot项目 接下来我们要学习一下如何创建一个spring boot项目。 我们采用的环境信息 JDK1.8 Maven 3.6 Idea 2021.1 所谓spring Boot项目&#xff0c;其实本质上就是一个maven/gradle项目&#xff0c;这是里面通过引入springBoot专门设置好…

JSP-概念

一、引子 很多读者可能听过JSP&#xff0c;并且知道这是一门过时的技术了。在Spring&#xff0c;SpringBoot已经成为主流的今天&#xff0c;笔者为什么还要介绍JSP的相关内容呢&#xff1f;笔者常常提到一个概念&#xff1a;理解一门技术&#xff0c;要理解这个技术为什么产生…

sqli-labs关卡23(基于get提交的过滤注释符的联合注入)

文章目录 前言一、回顾前几关知识点二、靶场第二十三关通关思路1、判断注入点2、爆数据库名3、爆数据库表4、爆数据库列5、爆数据库关键信息 总结 前言 此文章只用于学习和反思巩固sql注入知识&#xff0c;禁止用于做非法攻击。注意靶场是可以练习的平台&#xff0c;不能随意去…

给 Linux 主机添加 SSH 双因子认证

GitHub&#xff1a;https://github.com/google/google-authenticator-android 在信息时代&#xff0c;服务器安全愈发成为首要任务。Linux 主机通过 ssh 方式连接&#xff0c;当存在弱密码的情况下&#xff0c;通过暴力破解的方式会很容易就被攻破了&#xff0c;本文将向你展示…

国科大软件安全原理期末复习笔记

1 软件安全总论 1.软件的三大特性&#xff1a;复杂性、互连性、可扩展性&#xff1b; 2.基本概念&#xff1a;缺陷、漏洞、风险 缺陷&#xff08;bug&#xff09;&#xff1a;软件在设计和实现上的错误&#xff1b;漏洞&#xff08;vulnerability&#xff09;&#xff1a;漏洞…