29 猜丁壳游戏

猜丁壳游戏

猜丁壳游戏是一个简单的石头、剪刀、布游戏,玩家与计算机进行对战。以下是游戏的详细说明和使用指南。

在这里插入图片描述
在这里插入图片描述

游戏界面

游戏界面分为几个部分:

  1. 标题栏:显示游戏名称“猜丁壳”。
  2. 选择区域:玩家可以选择石头、剪刀或布。
  3. 控制按钮:包含“开始”、“清除”和“退出”三个按钮。
  4. 比赛结果区域:显示每局比赛的结果。

游戏规则

  • 玩家通过选择石头、剪刀或布来与计算机对战。
  • 每次选择后,计算机将随机选择石头、剪刀或布。
  • 比赛结果会显示在比赛结果区域。
  • 结果分为三种:
    • 平局:玩家和计算机出相同的手势。
    • 玩家获胜:玩家出的手势打败了计算机的手势。
    • 计算机获胜:计算机出的手势打败了玩家的手势。

操作指南

  1. 开始游戏:点击“开始”按钮,开始新一轮的比赛。
  2. 清除结果:点击“清除”按钮,清除之前所有的比赛结果,为新一轮比赛做准备。
  3. 退出游戏:点击“退出”按钮,关闭游戏窗口。

游戏代码

以下是猜丁壳游戏的完整代码,使用了Python的Tkinter库来创建图形用户界面。

from tkinter import *  # 导入tkinter库的所有组件
import random  # 导入random库用于生成随机数count = 0  # 初始化全局计数器def race():  # 定义开始游戏的函数global count  # 使用全局变量countcount += 1  # 每次调用函数时计数器加1txt.insert(END, f'第{count}局\n')  # 在文本框中插入当前局数# 创建一个字典,将数字映射到石头、剪刀、布choices = {0: '石头', 1: '剪刀', 2: '布'}people = choices[num.get()]  # 获取玩家的选择robot = random.choice(list(choices.values()))  # 计算机随机选择# 在文本框中插入玩家和计算机的选择txt.insert(END, f'玩家出:{people}\n')txt.insert(END, f'机器人出:{robot}\n')# 判断胜负并输出结果if people == robot:txt.insert(END, '结果:平局\n\n')elif (people == '石头' and robot == '布') or \(people == '剪刀' and robot == '石头') or \(people == '布' and robot == '剪刀'):txt.insert(END, '结果:机器人获胜\n\n')else:txt.insert(END, '结果:玩家获胜\n\n')txt.see(END)  # 确保文本框滚动到最新内容txt.update()  # 更新文本框显示def clean():  # 定义清除文本框内容的函数txt.delete(1.0, END)  # 清除文本框从开始到结束的内容root = Tk()  # 创建Tkinter窗口
root.title('猜丁壳')  # 设置窗口标题
root.geometry('400x360+200+300')  # 设置窗口大小和位置
root.resizable(False, False)  # 禁止调整窗口大小
root.config(bg='#d7d7d5')  # 设置窗口背景颜色# 创建欢迎标签
Label(root, text='欢迎来到猜丁壳小游戏', font=('微软雅黑', 15), bg='#d7d7d5').pack()# 创建选择区域
frame1 = Frame(root, bg='#d7d7d5')
frame1.pack()
num = IntVar()
num.set(0)  # 初始化选择变量
Label(frame1, text='请选择:', font=('微软雅黑', 15), bg='#d7d7d5').pack(side=LEFT)
Radiobutton(frame1, text='石头', font=('微软雅黑', 15), bg='#d7d7d5', value=0, variable=num).pack(side=LEFT)
Radiobutton(frame1, text='剪刀', font=('微软雅黑', 15), bg='#d7d7d5', value=1, variable=num).pack(side=RIGHT)
Radiobutton(frame1, text='布', font=('微软雅黑', 15), bg='#d7d7d5', value=2, variable=num).pack(side=RIGHT)# 创建控制按钮区域
frame2 = Frame(root, bg='#d7d7d5')
frame2.pack(pady=5)
begin = Button(frame2, text='开始', font=('微软雅黑', 9), command=race)
begin.pack(side=LEFT, padx=5)
Button(frame2, text='清除', font=('微软雅黑', 9), command=clean).pack(side=LEFT, padx=5)
Button(frame2, text='退出', font=('微软雅黑', 9), command=quit).pack(side=RIGHT, padx=5)# 创建显示比赛结果的标签
Label(root, text='比赛结果', font=('微软雅黑', 15), bg='#cefdfc').pack()txt = Text(root, width=50, height=10, font=('微软雅黑', 12))  # 创建文本框用于显示结果
txt.pack()  # 将文本框添加到窗口root.mainloop()  # 进入Tkinter事件循环

结语

猜丁壳游戏是一个简单有趣的小游戏,适合各个年龄段的玩家。通过这个小游戏,可以加深对石头、剪刀、布这个游戏规则的理解,并享受与计算机对战的乐趣。

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

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

相关文章

Python简易IDE工作界面制作

、 休闲一下,学习编程还是要学习一些界面编程,能够根据需要制作图形操作界面,这样我们开发的程序才能方便操作和使用,同时获得更友好的人机交互体验。下面是一个用PyQt5制作的简易界面,供大学参考。如下图所示&a…

【vscode】vscode+cmake+llvm+ninja开发环境的搭建(draft)

文章目录 前言1 软件、工具和插件安装1.1 vscode安装1.2 cmake安装1.3 安装LLVM1.4 安装Ninja1.5 vscode插件安装 2 工具链和CMakeLists2.1 工具链(toolchain.cmake)2.2 CMakeLists.txt2.3 基本语法注释 前言 本文是一个使用vscode的小白扫盲贴。 所谓工…

一个php快速项目搭建框架源码,带一键CURD等功能

介绍: 框架易于功能扩展,代码维护,方便二次开发,帮助开发者简单高效降低二次开发成本,满足专注业务深度开发的需求。 百度网盘下载 图片:

从Python转向MicroPython使用详解

概要 随着物联网(IoT)设备的普及和嵌入式系统的广泛应用,MicroPython逐渐成为Python开发者们探索嵌入式编程的重要工具。MicroPython是一种精简版的Python,专为资源受限的设备而设计,能够在微控制器和其他嵌入式设备上运行。对于习惯使用Python的开发者而言,转向MicroPy…

海大集团的可观测平台建设实践

海大集团介绍 海大集团是以科技为主导的中国农业龙头企业,1998年成立于广东广州,目前业务涵盖饲料、种苗、动保疫苗、智慧养殖、食品加工等现代农牧全产业链,在全球拥有分子公司逾600家、员工达4万人,位列2023中国企业500强第238…

Python爬虫(一文通)

Python爬虫(基本篇) 一:静态页面爬取 Requests库的使用 1)基本概念安装基本代码格式 应用领域:适合处理**静态页面数据和简单的 HTTP 请求响应**。 Requests库的讲解 含义:requests 库是 Python 中一个…

【HTML】模拟二级菜单【附源代码】

模拟二级菜单 HTML部分&#xff1a; <!DOCTYPE html>: 声明文档类型为HTML5。<html>: HTML文档的根元素。<head>: 包含文档的元数据&#xff0c;如字符集、标题和样式。 <meta charset"utf-8">: 设置文档的字符编码为UTF-8。<title>:…

公网信息泄露监测(网盘、暗网、搜索引擎、文档平台)思路分享

一、背景 众测项目中白帽可能会提交一些信息泄露漏洞&#xff0c;同时甲方可会收到一些白帽提交的公网信息泄露文件漏洞&#xff0c;例如百度网盘被员工分享某些文件或者某些包含敏感信息的文件可以通过如谷歌、百度等搜索引擎通过特定语法搜索到。为了可以及时发现泄露的文件…

【计算机组成原理】六、总线:1.总线概论(分类、性能指标、总线标准)

六、总线 文章目录 六、总线1.总线概论2.分类2.1按数据传输格式2.2按总线功能(连接的部件)2.3按时序控制方式2.2-2系统总线的结构 3.性能指标6.总线标准6.1系统总线6.2局部总线6.3设备总线、通信总线6.4为何串行总线取代并行总线&#xff1f; 1.总线概论 总线被刻蚀在主板上 总…

【3.6】贪心算法-解救生艇问题

一、题目 第 i 个人的体重为 people[i]&#xff0c;每艘船可以承载的最大重量为 limit。 每艘船最多可同时载两人&#xff0c;但条件是这些人的重量之和最多为 limit 。 返回载到每一个人所需的最小船数。(保证每个人都能被船载)。 二、解题思路 题目要求每艘船最多能载两人&…

【58同城-注册安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞 …

【零知识证明】MiMC哈希函数电路

1 哈希电路 哈希函数电路实现&#xff1a; pragma circom 2.0.0;// y (x k c) ^ 5 // 输入信号x, k &#xff0c;常量c // base x k c // base2 base * base // base4 base2 * base2 // base5 base *base4 // 输出 ytemplate MIMC5(){signal input x;signal input k…

【SpringCloud Alibaba】(九)学习 Gateway 服务网关

目录 1、网关概述1.1、没有网关的弊端1.2、引入 API 网关 2、主流的 API 网关2.1、NginxLua2.2、Kong 网关2.3、Zuul 网关2.4、Apache Shenyu 网关2.5、SpringCloud Gateway 网关 3、SpringCloud Gateway 网关3.1、Gateway 概述3.2、Gateway 核心架构 4、项目整合 SpringCloud …

信息安全--网络安全体系与安全模型(二)

其他安全模型 ■纵深防御模型&#xff1a;①安全保护②安全监测③实时响应④恢复 ■分层防护模型&#xff1a;参考OSI模型&#xff0c;对保护对象进行层次化保护。 ■等级保护模型&#xff1a;将信息系统划分成不同安全保护等级&#xff0c;采取相 应的保护措施。 ■网络生…

UE开发中的设计模式(四) —— 组合模式

面试中被面试官问到组合模式和继承有什么区别&#xff0c;给我问懵了&#xff0c;今天又仔细看了下&#xff0c;这不就是UE里的组件吗 >_< 文章目录 问题提出概述问题解决总结组合模式的优缺点继承的优缺点 问题提出 考虑这样一个场景&#xff0c;我们有一个敌人的基类&…

武器弹药制造5G智能工厂物联数字孪生平台,推进制造业数字化转型

武器弹药制造领域作为国防工业的重要组成部分&#xff0c;其数字化转型更是关乎国家安全与军事实力提升的关键。随着5G、物联网、大数据、云计算及人工智能等先进技术的融合应用&#xff0c;武器弹药制造5G智能工厂物联数字孪生平台应运而生&#xff0c;正逐步成为推进制造业数…

程序设计—智慧城市应急物资配送系统开发—大数据模块 项目源码36262

摘 要 智慧城市应急物资配送系统开发中的大数据模块&#xff0c;作为核心的数据处理与分析组件&#xff0c;实现了数据可视化、用户行为分析、精准广告推送、数据报表生成以及商品与需求信息的全面管理。 该模块通过数据地图展示大屏&#xff0c;实时呈现应急物资配送的层级联…

【STM32】电容触摸按键

电容按键就是酷&#xff0c;但据我使用过电容按键版的洗澡计费机子后&#xff0c;一生黑&#xff08;湿手优化没做好的电容按键简直稀碎&#xff09;。 大部分图片来源&#xff1a;正点原子HAL库课程 专栏目录&#xff1a;记录自己的嵌入式学习之路-CSDN博客 目录 1 触摸按…

Python 如何操作 Excel 文件(openpyxl, xlrd)

Python是处理Excel文件的一种非常强大且灵活的工具&#xff0c;尤其是通过使用openpyxl和xlrd等库。openpyxl专注于Excel 2007及更高版本的.xlsx文件的创建、读取、修改和写入&#xff0c;而xlrd则主要用于读取早期版本的Excel文件&#xff08;.xls&#xff09;&#xff0c;但自…

【教你一键解决】draw.io中输入英文显示成中文且输入位置移到首位

问题描述&#xff1a;当英文输入一个“a”时&#xff0c;会自动出现中文“一个”&#xff0c;再输入“a”才会出现“a”&#xff0c;删除时无法把中文删除&#xff0c;如下图所示。 解决方法&#xff1a;关闭浏览器的自动翻译功能即可&#xff0c;如下图所示。