用PythonCharm製做抓狐狸的小遊戲。

假設一共有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()

本文分享 CSDN - Kinght_123。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。python

相關文章
相關標籤/搜索