python实验3 石头剪刀布游戏

news2025/1/19 8:23:23

实验3:石头剪刀布游戏

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

一、实验目的

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

二、知识要点图

在这里插入图片描述

三、实验

1. 石头剪刀布

  • 实验题目

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

    • 第一次试写
      • 代码
        import random
        
        print("\n石头剪刀布比赛开始,请两位选手做出你的选择:")
        h1 = input("\t请第一位选手做出你的选择:(1=石头,2=剪刀,3=布)")
        h2 = input("\t请第二位选手做出你的选择:(1=石头,2=剪刀,3=布)")
        if
        
      • 总结:不懂怎么用列表进行比较。
    • 第二次试写(看完答案)
      # 看完老师答案试写
      import random
      
      choiceList = ["石头","剪刀","布"]
      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("格式错误请重新输入。")
              continue
          if 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.coloradmin.cn/o/1269432.html

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

相关文章

COGVLM论文解读(COGVLM:VISUAL EXPERT FOR LARGE LANGUAGE MODELS)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、摘要二、引言三、模型方法1、模型思路2、融合公式 四、训练方法总结 前言 2023年5月18日清华&智谱AI发布并开源VisualGLM-6B以来,清华KEG&…

竞赛选题 题目:基于深度学习的中文对话问答机器人

文章目录 0 简介1 项目架构2 项目的主要过程2.1 数据清洗、预处理2.2 分桶2.3 训练 3 项目的整体结构4 重要的API4.1 LSTM cells部分:4.2 损失函数:4.3 搭建seq2seq框架:4.4 测试部分:4.5 评价NLP测试效果:4.6 梯度截断…

BUUCTF [GXYCTF2019]BabyUpload 1详解(.htaccess配置文件特性)

题目环境:查看题目源码 SetHandler application/x-httpd-php 通过源码可以看出这道文件上传题目主要还是考察.htaccess配置文件的特性 倘若不先上传.htaccess配置文件,那么后台服务器就无法解析php代码 这个是需要注意的 .htaccess配置文件特性 概述来说…

函数学习 PTA 1使用函数输出一个整数的逆序数;3判断满足条件的三位数;5使用函数求余弦函数的近似值

其实一共有五道题,但那两道实在太过简单,也不好意思打出来给大家看,那么这篇博客,就让我一次性写三道题吧!也当是个小总结,睡前深思。 6-1 使用函数输出一个整数的逆序数 本题要求实现一个求整数的逆序数的…

STM32F407-14.3.6-01输入捕获模式

输入捕获模式 在输入捕获模式下,当相应的 ICx⑦ 信号检测到跳变沿后,将使用捕获/比较寄存器 (TIMx_CCRx⑪) 来锁存计数器的值。发生捕获事件时,会将相应的 CCXIF⑬ 标志(TIMx_SR 寄存器)置 1, 并可发送中断…

云时空社会化商业 ERP 系统 Shiro 反序列化漏洞复现

0x01 产品简介 时空云社会化商业ERP(简称时空云ERP) ,该产品采用JAVA语言和Oracle数据库, 融合用友软件的先进管理理念,汇集各医药企业特色管理需求,通过规范各个流通环节从而提高企业竞争力、降低人员成本…

SpringMVC多种类型数据响应

SpringMVC多种类型数据响应入门 1.概念 RequestMapping 作用:用于建立请求URL和处理请求方法之间的对应关系 位置: 类上,请求URL的第一级访问目录。此处不写的话,就相当于应用的根目录 方法上,请求URL的第二级访问目…

【二叉树】Leetcode 199. 二叉树的右视图

力扣题目链接 解题思路 一开始&#xff0c;我以为只需要依次遍历最右边一列所有数即可&#xff0c;写出来的代码也通过了样例&#xff1a; class Solution { public:vector<int> rightSideView(TreeNode* root) {vector<int> ans;TreeNode* temp root;while(tem…

游戏缺少d3dx9_43.dll修复方法分享,快速解决dll缺失问题

在计算机使用过程中&#xff0c;我们常常会遇到一些错误提示&#xff0c;其中之一就是“找不到d3dx9_43.dll文件”。这个错误通常出现在运行某些游戏或应用程序时&#xff0c;d3dx9_43.dll是一个动态链接库文件&#xff0c;它是DirectX 9的一部分&#xff0c;用于支持游戏中的3…

LeetCode 7 整数反转

题目描述 整数反转 给你一个 32 位的有符号整数 x &#xff0c;返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] &#xff0c;就返回 0。 假设环境不允许存储 64 位整数&#xff08;有符号或无符号&#xff09;。 示例…

U-boot(七):U-boot移植

本文主要探讨基于210官方U-boot源码移植。 移植基础 tar -jxvf android_uboot_smdkv210.tar.bz2cd u-boot-samsung-devrm -rf onenand_ipl onenand_bl1 lib_avr32 lib_blackfin lib_i386 lib_m68k lib_mips lib_microblaze lib_nios lib_nios2 lib_ppc lib_sh lib_sparccd bo…

Ubuntu防止休眠和挂起(笔记)

目录 1 动机2 禁用休眠3 解除休眠 1 动机 我要将 饿啊人制作成 noah-mp 的区域运行强迫&#xff0c;但是跑的慢&#xff0c;一晚上两天。后来发现是因为电脑自动 supend 了。Ubuntu 在电源那里最多只能设置 2 小时的防止休眠&#xff0c;2小时候又自动休眠&#xff0c;严重影响…

mongodb基本操作命令

mongodb快速搭建及使用 1.mongodb安装1.1 docker安装启动mongodb 2.mongo shell常用命令2.1 插入文档2.1.1 插入单个文档2.1.2 插入多个文档2.1.3 用脚本批量插入 2.2 查询文档 前言&#xff1a;本篇默认你是对nongodb的基础概念有了了解&#xff0c;操作是非常基础的。但是与关…

Opencv手势控制音量!附源码!

效果演示&#xff1a; 废话不多说&#xff01;直接上源码&#xff01;下面写有所有代码注释&#xff01;&#xff01; import cv2 import mediapipe as mp #它包含了各种预训练的机器学习模型&#xff0c;可以用于姿势估计、手势识别等任务 from ctypes import cast, POINTE…

P8649 [蓝桥杯 2017 省 B] k 倍区间(前缀和+优化(桶分类))

分析&#xff1a; &#xff08;1&#xff09;任意连续子序列可用两个前缀和的差来表示 &#xff08;2&#xff09;判断该子序列是否为k的倍数 p1-p2 模 0 (mod k) 等价于&#xff1a;前缀和模 k 是否同余 &#xff08;3&#xff09;同余的任意两前缀和组合的序列均满足…

[React] 2023年最新面试题

[React] 2023年最新面试题 1. class 组件与函数组件的区别2. react 18 新特性有那些?新增 createRoot API自动批处理过渡更新新的Hook 3. redux 和 react-redux 的区别4. redux 中间件的原理5. setState 发生了什么 &#xff0c;render 函数做了什么6. 虚拟DOM&#xff0c; Fi…

【面试】typescript

目录 为什么用TypeScript&#xff1f; TS和JS的区别 控制类成员可见性的访问关键字&#xff1f; public protected&#xff09;&#xff0c;该类及其子类都可以访问它们。 但是该类的实例无法访问。 私有&#xff08;private&#xff09;&#xff0c;只有类的成员可以访问…

JSON.stringify方法详解 后端接受JSON数据格式

1、方法定义&#xff1a;JSON.stringify(value, replacer, space) 参数说明&#xff1a; value&#xff1a;js对象 replacer&#xff1a;替换对象&#xff0c;可以是一个方法、对象或数组&#xff0c;将value按照替换规则展示。 space&#xff1a;填充参数&#xff0c;可以是数…

LVS+Keepalived实验

实验前准备 主DR服务器&#xff1a;(ens33)192.168.188.11 ipvsadm、keepalived (ens33:0)192.168.188.188 备DR服务器&#xff1a;(ens33)192.168.188.12 ipvsadm、keepalived (ens33:0)192.168.188.188 Wbe服务器1&#xff1a;(ens33)192.168.188.13 (lo:0)192.168.188.188 W…

selenium使用记录

本文记录python环境下使用selenium的一些步骤 Step1&#xff1a;安装并配置驱动 pip install selenium # 使用pip在对应python中安装selenium包为了让selenium能调用指定的浏览器&#xff0c;需要下载对应浏览器的驱动程序&#xff08;这里以edge为例子&#xff09; #Firefo…