2018.6.19 学习日志(1)-----抓狐狸游戏

'''模拟抓护理小游戏。假设一共有一排5个洞口,小狐狸最开始在其中一个洞口,
 然后玩家随机打开一个洞口,如果里面有狐狸就抓到了,没有狐狸就第二天来抓,
 三十第二天狐狸就会在玩家来抓之前跳到隔壁洞口'''
import random
def catchMe(n=5,maxStep=10):   #五个洞口,最多允许抓十次
        position=[0]*n;            #n个洞口有狐狸就为1,没有狐狸就为0
        oldpos=random.randrange(0,n)
        position[oldpos]=1         #随机给小狐狸一个位置

        #玩家开始抓狐狸
        m=1
        while m<=maxStep:
            #判断输入正确
            print("第{}次".format(m))
            while True :
                try:
                    x=int(input("今天你要开哪个洞口(0-4):"))
                    assert 0<=x<=4          #输入的洞口值要合法,如果不合法抛出异常
                    break
                except:
                    #输入不正确执行下面代码
                    print("请输入正确的洞口")
            #判断有没有找到
            if position[x]==1:
                print("Congratulation!")
                break
            else:
                print("Try again!")
            #小狐狸换洞口,洞口有两个可能,
            if oldpos==0:
                newpos=oldpos+1
            elif oldpos==n-1:#为最后一个洞口
                newpos=0
            else:
                newpos=oldpos+random.choice((-1,1))
            position[oldpos],position[newpos]=0,1   #将位置更新
            m=m+1   #次数+1
        else:
            print("You fail")
catchMe()

我思考过程中主要卡在了洞口该怎么设置,这里很没有头绪
对于random库的使用也很重要
emmm现在想想
对于我的难点应该就是设置洞口那里!!!!
以后要注意!!!!!!
等下学习random库!!!!!

你可能感兴趣的:(Python学习)