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.mzph.cn/news/180523.shtml

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

相关文章

C/C++ 发送与接收HTTP/S请求

HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的协议。它是一种无状态的、应用层的协议,用于在计算机之间传输超文本文档,通常在 Web 浏览器和 Web 服务器之间进行数据通信。HTTP 是由互联网工程任务组(IETF…

上海亚商投顾:沪指震荡反弹 汽车产业链掀涨停潮

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 三大指数昨日震荡反弹,北证50指数跌超4%,近50只北交所个股跌超10%。 新能源车产业链掀…

深度学习点云质量增强方法综述

好久没更新博客了,后面计划重启博客,空闲时分享一下学习心得,包括但不局限于点云编码/压缩、插帧、质量增强。这次,推荐一篇综述论文。 期刊:《中国图象图形学报》2023年第28卷第11期 作者:陈建文1, 赵丽丽…

JSONP解决跨域问题

前言 本文主要讲解跨域问题以及解决跨域问题的方案之一JSONP的实现方式。 什么是跨域 全称为Cross-Origin Resource Sharing,简单来说请求的客户端和服务端的端口、域名、协议中的任意一个有不一样的地方在URL的展示中,那么就会出现这个跨域问题。 它产生的原因…

不同路径 II(力扣LeetCode)动态规划

不同路径 II 题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。 现在考虑网格中有障碍物。…

Vue3自定义指令(directive)

Vue2自定义指令(directive) Vue3自定义指令(directive)

【Android Jetpack】Hilt 依赖注入框架

文章目录 依赖注入DaggerHiltKoin添加依赖项Hilt常用注解的含义HiltAndroidAppAndroidEntryPointInjectModuleInstallInProvidesEntryPoint Hilt组件生命周期和作用域如何使用 Hilt 进行依赖注入 依赖注入 依赖注入是一种软件设计模式,它允许客户端从外部源获取其依…

智能井盖传感器怎么监测井盖倾斜?

城市道路上的井盖是常见的安全隐患,由于井盖质量不过关、安装不合理等原因导致的井盖位移或倾斜等事故,每年都处于不断增加的状态。为了减少此类案件的发生并维护社会治安,国家相关部门已经制定了多项政策法规对井盖进行统一监管。鼓励各个城…

有哪些不错的golang开源项目?

前言 下面是github上的golang项目,适合练手,可以自己选择一些项目去练习,整理不易,希望能多多点赞收藏一下!废话少说,我们直接进入正题>>> 先推荐几个教程性质的项目(用于新手学习、…

C Primer Plus讲解前置说明

说明 本来是准备接着写下去,写着就发现思路整理的有点杂乱无章。果然是“想一千次,不如去做一次”。所以这次准备基于《C Primer Plus》第六版给大家分享一下,也是自己梳理的一个过程。有关C语言的书很多,我选这本也恰巧是因为以前…

Django二转Day02

http #1 http 是什么#2 http特点#3 请求协议详情 -请求首行---》请求方式,请求地址,请求协议版本 -请求头---》key:value形式 -referer:上一次访问的地址 -user-agenet:客户端类型 -name&#x…

面试题:汉诺塔问题 · 递归

你好,我是安然无虞。 文章目录 汉诺塔问题问题描述解题思路代码详解 汉诺塔问题 问题描述 解题思路 这道题的名字还是很响的,基本上都能看出来使用递归解题,但是具体怎么实现还是需要细细想一想。 我们一步一步来,请看&#xff…

2023-11-28 LeetCode每日一题(设计前中后队列)

2023-11-28每日一题 一、题目编号 1760.设计前中后队列二、题目链接 点击跳转到题目位置 三、题目描述 请你设计一个队列,支持在前,中,后三个位置的 push 和 pop 操作。 请你完成 FrontMiddleBack 类: FrontMiddleBack() 初…

Java中的Lambda表达式和相关函数式接口

知识模块: 一.Lambda表达式概述: 二.Lambda表达式使用前提 三.Lambda表达式一.完整格式二.简略格式 四.Lanbda表达式原理 五.Java中已有的函数式接口a.Supplierb.Consumer接口c.Functiond.Predicate一.Lambda表达式概述:面向对象编程思想关注…

微服务实战系列之Cache

前言 欢迎来到Cache(缓存)的世界! 自从世界第一台计算机诞生之日起,人们对效率的渴望逐步增强。从CPU到存储,从芯片到内存,一批又一批的先驱以一种孜孜不倦的“工匠”精神,为计算机运行效率的提…

揭开 BFC 的神秘面纱:前端开发必知必会

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

用Sublime编写Lua脚本

大家好,我是阿赵。   现在很多手游项目使用lua作为热更新的代码脚本,我一直很喜欢用Sublime来写lua程序。喜欢使用它的原因是它的轻量化,因为我经常要同时打开多个项目,Unity和VisualStudio这些软件都比较占用电脑的性能&#x…

Python武器库开发-前端篇之JavaScript基础语法(三十五)

前端篇之JavaScript基础语法(三十五) JavaScript字符串及常用方法 JavaScript中的字符串是一个包含零个或多个字符的序列,可以包含字母、数字、符号和空格等。以下是一些JavaScript中常用的字符串方法: length:返回字符串的长度&#xff0…

Nodejs+vue基于微信小程序的高校餐厅食品留样管理系统uniapp

任何系统都要遵循系统设计的基本流程,本系统也不例外,同样需要经过市场调研,需求分析,概要设计,详细设计,编码,测试这些步骤,基于nodejs小程序技术设计并实现了小程序。采用B/S结构,…

父进程隐藏——ConsoleApplication903项目

首先我发现用calc来做进程隐藏实验是失败的,父进程一直都是svhost.exe 那么我用我自己生成的cs木马beacon903.exe试试 试试explorer.exe 再试试cmd.exe 可以看到成功变成cmd.exe 可以看到我们可以通过这种方式虚假父进程 以上我们是直接获得的pid,那…