编写抓狐狸游戏。假设共有5个洞,小狐狸最初随机跳入一个洞中。要求定义Fox类描述狐狸的位置,编程实现该游戏判断胜负并统计玩家猜测的次数

左右横跳的小狐狸

题目概述

编写抓狐狸游戏。假设共有5个洞,小狐狸最初随机跳入一个洞中。玩家有三次机会输入一个洞的编号,若狐狸恰好在该洞中,则玩家胜利;若狐狸不在该洞并且猜测没有超过三次,则狐狸会在玩家下一次猜测之前跳入隔壁洞中。要求定义Fox类描述狐狸的位置,编程实现该游戏判断胜负并统计玩家猜测的次数。
本题的核心是利用random库中的函数确定这只小狐狸的位置以及对小狐狸到达边缘洞穴的处理

import random

# 调皮小狐狸的位置
class Fox():
    # 构造函数
    def __init__(self, currentPositon):
        Fox.currentPositoin = currentPositon

    # 随机生成小狐狸的位置
    def position(self):
        currentPosition = random.randint(1, 5)  # 随机生成小狐狸的初始位置[1,5]
        return currentPosition


f = Fox(3)  # 3是随意填的数,如果不给它一个数值会报错(自己编写构造函数的话)
l = f.position()
Count = 0

for i in range(3):
    x = int(input('请输入要打开的洞口编号(1-5):'))
    Count += 1
    if x == l:

        print('玩家胜利,您共猜了:%d次'%(Count))
        break
    if l == 1:
        l += 1
    elif l == 5:
        l -= 1
    else:
        # 中间位置,小狐狸的左右横跳
        l += random.choice([-1, 1])  # choice从序列中随机返回一个元素
    if i == 2:
        print('玩家失败,您的次数用光了')

运行结果如图:
在这里插入图片描述
觉得有帮助点个赞再走!!!
在这里插入图片描述

  • 13
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
开发串口设备(包括移动蓝牙设备)功能,经常需要使用到串口调试工具,关于串口调试工具,网上有很多非常不错的使用简单的调试工具,但是都是比较早期的,比如对于编码的支持都不好,基本上都只能发送ANSI编码的字符串,如果需要发送Unicode或者UTF-8的编码字符串就没有办法,需要自己编好码再发送;另外,不能根据接收到的数据通过编程自动实现通信协议返回数据,只能通过手工,这样就不能满足全流程协议测试,就很不方便。基于此,我们开发了一款”狐狸“可编程串口调试工具,最大的亮点是可以发送、查看任何编码数据格式;可以编程(Pascal Script)实现串口自动回复数据。”狐狸“可编程串口调试工具是一款免费工具,调试串口设备的得力工具。常用的数据回复模板都已经提供,会Pascal的就直接可以上手。 该工具如果配合【蓝牙模块通过USB转串口】的通用板子,就可以调试任何蓝牙协议。比如你需要开发一款蓝牙温度计,通过手机APP或者小程序链接温度计,查看温度,开发过程中,可以不需要先有这款蓝牙温度计,可以通过【蓝牙模块通过USB转串口】的板子结合”狐狸“可编程串口调试工具先调试手机端,完全实现手机端的功能,最后再直接使用蓝牙温度计就可以和手机通信了,非常方便,并行开发极大提高效率。 希望”狐狸“可编程串口调试工具对有需要的朋友有帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值