python实验3 石头剪刀布游戏

一、实验目的

  • 了解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]
  • 17
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值