python实验3 石头剪刀布游戏

实验3:石头剪刀布游戏

  • 一、实验目的
  • 二、知识要点图
  • 三、实验
    • 1. 石头剪刀布
    • 2. 实现大侠个人信息

一、实验目的

  • 了解3类基本组合数据类型。
  • 理解列表概念并掌握Python中列表的使用。
  • 理解字典概念并掌握Python中字典的使用。
  • 运用jieba库进行中文分词并进行文本词频统计。

二、知识要点图

在这里插入图片描述

三、实验

1. 石头剪刀布

  • 实验题目

    • 利用列表实现石头剪刀布游戏。请补全程序并提交。
    • 请思考:winList使用元组实现可以吗?童鞋们,动手试试吧!
  • 作答

    • 第一次试写
      • 代码
        import randomprint("\n石头剪刀布比赛开始,请两位选手做出你的选择:")
        h1 = input("\t请第一位选手做出你的选择:(1=石头,2=剪刀,3=布)")
        h2 = input("\t请第二位选手做出你的选择:(1=石头,2=剪刀,3=布)")
        if
        
      • 总结:不懂怎么用列表进行比较。
    • 第二次试写(看完答案)
      # 看完老师答案试写
      import randomchoiceList = ["石头","剪刀","布"]
      winList = [["石头","剪刀"],["剪刀","布"],["布","石头"]]
      print("\n石头剪刀布游戏开始了!!!!!\n")
      while True:hchoice = input("请你输入你的选择(石头/剪刀/布/3-退出游戏):")cchoice = random.choice(choiceList)# 判断是否游戏结束if hchoice == "3":print("游戏结束。\n")break# 判断是否格式错误if hchoice not in choiceList:print("格式错误请重新输入。")continueif cchoice==hchoice:print("平局。")elif [hchoice,cchoice] in winList:print("恭喜您获胜!")else:print("不好意思,你输了。")
      
  • 流程图
    在这里插入图片描述

2. 实现大侠个人信息

  • 实验题目
    • 利用字典实现大侠个人信息查询程序。请补全程序并提交。
    • 请思考:如何修改程序,使用户只有在输入“exit”的时候才退出程序?诸位,亮亮你的手段吧!提示:可参考1中的石头剪刀布游戏。
  • 代码
    # 创建字典
    people = {'乔峰': {'绝技': '降龙十八掌','门派': '丐帮'},'张无忌': {'绝技': '乾坤大挪移','门派': '明教'},'令狐冲': {'绝技': '独孤九剑','门派': '华山派'}
    }name = input('输入你想要查询的人:')
    r = input('请选择大侠的绝技(q)还是门派(a):')
    if r=='q':y='绝技'
    else:y='门派'
    print("{}大侠{}是{}".format(name,y,people[name][y]))
  • 总结
    • 字典的用法(借鉴文章)
      • 获取键对应的值
        • 方法一:访问键
          d = {'小明': 180, "小芳": 175, "小红": 170}print('小明的身高:',d['小明'])	# 通过字典里面的键['小明']取value
          print('小方的身高:',d['小芳'])	# 通过字典里面的键['小芳']取value
          print('小红的身高:',d['小红'])	# 通过字典里面的键['小红']取value
          
        • 方法二:用get()
          d = {'小明': 180, "小芳": 175, "小红": 170}      # 创建字典# .get('键')print('小明的身高:',d.get('小明'))
          print('小方的身高:',d.get('小芳'))
          print('小红的身高:',d.get('小红'))
          ————————————————
          版权声明:本文为CSDN博主「王同学在这」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
          原文链接:https://blog.csdn.net/flyskymood/article/details/124124859
          
      • 常见操作
          • 测量键值对的个数dict.len()
          • 返回key列表dict.keys()
          • 返回values列表dict.values()
          • 返回(键,值)元组列表dict.items()
        • d = {'小明': 180, "小芳": 175, "小红": 170}   # 创建字典d['小王'] = 180   # 添加小王身高
          d['小李'] = 185   # 添加小李身高
          
        • d = {'小明': 180, "小芳": 175, "小红": 170}   # 创建字典d['小王'] = 180   # 添加小王身高
          d['小李'] = 185   # 添加小李身高d['小李'] = 180   # 小李真正身高
          
        • d = {'小明': 180, "小芳": 175, "小红": 170,"小王":180}   # 创建字典del d['小红']  # 删除小红信息
          
      • 编程过程中错误的内容:二级字典的使用方法people[name][y]

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

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

相关文章

vue3+tsx的使用

<template><div><xiaoman on-click"getItem" name"似懂非懂"></xiaoman></div> </template><script setup langts>import xiaoman from "./App"const getItem(item:any)>{console.log(item,it…

『RabbitMQ』入门指南(安装,配置,应用)

前言 RabbitMQ 是在 AMQP&#xff08;Advanced Message Queuing Protocol&#xff09; 协议标准基础上完整的&#xff0c;可复用的企业消息系统。它遵循 Mozilla Public License 开源协议&#xff0c;采用 Erlang 实现的工业级的消息队列(MQ)服务器&#xff0c;建立在 Erlang …

智慧机场视频监控系统方案:AI智能助力机场智慧运营

一、方案背景 随着人们生活物质水平的上升&#xff0c;人们对机场的需求也日益增多&#xff0c;在民航新建、迁建、扩建机场项目猛增的同时&#xff0c;也需同步配备相应的安防监控系统&#xff0c;以满足民航机场安全管理要求和机场运营业务的高速发展。 二、方案概述 智慧机…

express+mySql实现用户注册、登录和身份认证

expressmySql实现用户注册、登录和身份认证 注册 注册时需要对用户密码进行加密入库&#xff0c;提高账户的安全性。用户登录时再将密码以相同的方式进行加密&#xff0c;再与数据库中存储的密码进行比对&#xff0c;相同则表示登录成功。 安装加密依赖包bcryptjs cnpm insta…

数据结构:图文详解顺序表的各种操作(新增元素,查找元素,删除元素,给指定位置元素赋值)

目录 一.顺序表的概念 二.顺序表的实现 新增元素 默认尾部新增 指定位置添加元素 查找元素 查找是否存在 查找元素对应的位置 查找指定位置对应的元素 删除元素 获取顺序表长度 清空顺序表 一.顺序表的概念 在线性数据结构中&#xff0c;我们一般分为俩类&#xf…

pytorch分布式训练

1 基本概念 rank&#xff1a;进程号&#xff0c;在多进程上下文中&#xff0c;我们通常假定rank 0是第一个进程或者主进程&#xff0c;其它进程分别具有1&#xff0c;2&#xff0c;3不同rank号&#xff0c;这样总共具有4个进程 node&#xff1a;物理节点&#xff0c;可以是一个…

java学校高校运动会报名信息管理系统springboot+jsp

课题研究方案&#xff1a; 结合用户的使用需求&#xff0c;本系统采用运用较为广泛的Java语言&#xff0c;springboot框架&#xff0c;HTML语言等关键技术&#xff0c;并在idea开发平台上设计与研发创业学院运动会管理系统。同时&#xff0c;使用MySQL数据库&#xff0c;设计实…

信贷销售经理简历模板

这份简历内容&#xff0c;以信贷销售经理招聘需求为背景&#xff0c;我们制作了1份全面、专业且具有参考价值的简历案例&#xff0c;大家可以灵活借鉴。 信贷销售经理简历模板在线编辑下载&#xff1a;百度幻主简历 求职意向 求职类型&#xff1a;全职 意向岗位&#xff…

【计算机毕业设计】springboot+java高校实验室器材耗材料借用管理系统94l73

实验室耗材管理系统在Eclipse/idea环境中&#xff0c;使用Java语言进行编码&#xff0c;使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务&#xff0c;本系统教师和学生申请使用实验材料&#xff0c;管理员管理实验材料&#xff0c;审核实验材料的申请…

web前端之引入svg图片、html引入点svg文件、等比缩放、解决裁剪问题、命名空间、object标签、阿里巴巴尺量图、embed标签、iframe标签

MENU 前言直接在页面编写svg使用img标签引入通过css引入使用object标签引入其他标签参考资料 前言 web应用开发使用svg图片的方式&#xff0c;有如下几种方式 1、直接在页面编写svg 2、使用img标签引入 3、通过css引入 4、使用object标签引入 直接在页面编写svg 在html页面直接…

WEB渗透—反序列化(九)

Web渗透—反序列化 课程学习分享&#xff08;课程非本人制作&#xff0c;仅提供学习分享&#xff09; 靶场下载地址&#xff1a;GitHub - mcc0624/php_ser_Class: php反序列化靶场课程&#xff0c;基于课程制作的靶场 课程地址&#xff1a;PHP反序列化漏洞学习_哔哩哔_…

【Openstack Train安装】七、glance安装

Glance是为虚拟机的创建提供镜像的服务&#xff0c;我们基于Openstack是构建基本的IaaS平台对外提供虚拟机&#xff0c;而虚拟机在创建时必须为选择需要安装的操作系统&#xff0c;Glance服务就是为该选择提供不同的操作系统镜像。Glance提供Restful API可以查询虚拟机镜像的me…

自动伸缩:解密HPA、VPA、CA和CPA智能调整应用大小和数量

关注【云原生百宝箱】公众号&#xff0c;快速掌握云原生 Kubernetes提供了多种自动伸缩机制&#xff0c;例如HPA&#xff08;Horizontal Pod Autoscaling&#xff09;&#xff0c;可以根据不同情况动态调整Pod副本数量。此功能使 Pod 能够有效地处理当前流量&#xff0c;而无需…

git-5

1.GitHub为什么会火&#xff1f; 2.GitHub都有哪些核心功能&#xff1f; 3.怎么快速淘到感兴趣的开源项目 github上面开源项目非常多&#xff0c;为了我们高效率的找到我们想要的资源 根据时间 不进行登录&#xff0c;是没有办法享受到高级搜索中的代码功能的&#xff0c;登录…

在gitlab上使用server_hooks

文章目录 1. 前置条件2. Git Hook2.1 Git Hook 分为两部分&#xff1a;本地和远程2.1.1 本地 Git Hook&#xff0c;由提交和合并等操作触发&#xff1a;2.1.2 远程 Git Hook&#xff0c;运行在网络操作上&#xff0c;例如接收推送的提交&#xff1a; 3. 操作步骤3.1 对所有的仓…

VUE2+THREE.JS点击事件

THREE.JS点击事件 1.增加监听点击事件2.点击事件实现3.记得关闭页面时 销毁此监听事件 1.增加监听点击事件 renderer.domElement.addEventListener("click", this.onClick, false); 注:初始化render时监听 2.点击事件实现 onClick(event) {const raycaster new …

1-3、DOSBox环境搭建

语雀原文链接 文章目录 1、安装DOSBox2、Debug进入Debugrdeautq 1、安装DOSBox 官网下载下载地址&#xff1a;https://www.dosbox.com/download.php?main1此处直接下载这个附件&#xff08;内部有8086的DEBUG.EXE环境&#xff09;8086汇编工作环境.rar执行安装DOSBox0.74-wi…

SpringBoot监控Redis事件通知

Redis的事件通知 Redis事件通过 Redis 的订阅与发布功能&#xff08;pub/sub&#xff09;来进行分发&#xff0c; 因此所有支持订阅与发布功能的客户端都可以在无须做任何修改的情况下&#xff0c; 使用键空间通知功能。 因为 Redis 目前的订阅与发布功能采取的是发送即忘&am…

C#,《小白学程序》第八课:列表(List)其二,编制《高铁列车时刻表》与时间DateTime

1 文本格式 /// <summary> /// 车站信息类 class /// </summary> public class Station { /// <summary> /// 编号 /// </summary> public int Id { get; set; } 0; /// <summary> /// 车站名 /// </summary&g…

Java核心知识点整理大全8-笔记

Java核心知识点整理大全7-笔记-CSDN博客文章浏览阅读1.2k次&#xff0c;点赞27次&#xff0c;收藏26次。但是如果锁的竞争激烈&#xff0c;或者持有锁的线程需要长时间占用锁执行同步块&#xff0c;这时候就不适合 使用自旋锁了&#xff0c;因为自旋锁在获取锁前一直都是占用 c…