用PythonCharm制作抓狐狸的小游戏。

   日期:2020-10-03     浏览:363    评论:0    
核心提示:假设一共有5个洞口,小狐狸最开始再其中一个洞口,然后玩家随机打开一个洞口,如果里面有狐狸就抓到了,如果里面没有狐狸就第二天再来抓,但是第二天狐狸会在玩家来之前跳到隔壁洞口里。如果在规定的次数内抓到就算成功。from random import choice, randrangedef catchMe(n=5,maxStep = 10): """模拟抓小狐狸,一共有n个洞口,允许抓maxStep次 如果失败,小狐狸就会跳到隔壁洞口""" #n个洞口,有狐狸为1,没有狐狸为0

假设一共有5个洞口,小狐狸最开始再其中一个洞口,然后玩家随机打开一个洞口,如果里面有狐狸就抓到了,如果里面没有狐狸就第二天再来抓,但是第二天狐狸会在玩家来之前跳到隔壁洞口里。如果在规定的次数内抓到就算成功。

from random import  choice, randrange

def catchMe(n=5,maxStep = 10):
    """模拟抓小狐狸,一共有n个洞口,允许抓maxStep次 如果失败,小狐狸就会跳到隔壁洞口"""
    #n个洞口,有狐狸为1,没有狐狸为0
    positions = [0] * n
    #狐狸的随机初始位置
    oldPos = randrange(0,n)
    positions[oldPos] = 1

    #抓maxStep次
    while maxStep >=0:
        maxStep-= 1
        #这个循环保证用户输入是有效洞口编号
        while True:
            try:
                x =input('请输入洞口编号(0-{0}):'.format(n-1))
                #如果输入的不是数字,就会跳转except部分
                x = int(x)
                #如果输入的洞口编号有效,结束这个循环,否则就会继续输入
                assert 0 <=x< n
                break
            except:
                #如果输入的不是数字,就执行这里的代码
                print('要按套路来啊,再给你一次机会。')
        if positions[x] == 1:
            print('成功,我抓到小狐狸。')
            break
        else:
            print('今天又没抓到。')
        #如果这次没抓到,狐狸就跳到隔壁洞口
        if oldPos ==n - 1:
            newPos = oldPos - 1
        elif oldPos == 0:
            newPos = 0
        else:
            newPos = oldPos + choice((-1.1))
            positions[oldPos],positions[newPos] =0,1
    else:
        print('放弃吧,你这样乱试是没有希望的。')
#启动游戏,开始抓狐狸吧
catchMe()
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服