Python實現不一樣的猜數字遊戲的示例代碼

前言

日子從不虧欠,每一個努力向上的人,

未來的走運, 都是過往盡力的積累。

人勤春來早,奮進正當時。新春伊始,我們迎來瞭2023年開工第一天。

栗子同學恭祝大傢開工大吉,新年新氣象,萬事開門紅!

大傢知道“猜數字”這個遊戲嗎?顧名思義就是一個人想一個數字,另一個人猜。這個遊戲簡單又有趣,小編小時候很喜歡玩。遊戲開始瞭!小夥伴從 1~100 中任選一個數字記在心裡讓我猜,我每猜一個數字,他隻能說小瞭、大瞭或對瞭。直到我猜到數字,遊戲結束。

那時的我比較笨,總是從 1 開始依次往上猜……

1,小瞭。那就是 2,2 也小。那就是 3……就這樣一個一個猜測數字花費瞭很長時間。如果他定的數字是 99,那我要猜 99 次才能猜到!小夥伴表示很無奈,後來也不想再和我玩瞭。

長大之後的一次偶然的機會,我看到瞭一本書叫《算法圖解》。這本書上竟然提到瞭小時候我玩的“猜數字”遊戲,我才瞭解到,這個遊戲不是最終猜到這個數字就算贏,而是又快又準確地猜到數字,那才是高手!那如何快速準確地猜到數字呢?書中告訴瞭我們“猜數字”遊戲快速勝出的小竅門,讓我大呼神奇,茅塞頓開。首先從 50 開始猜。

​小瞭,但我們可以排除一半的數字!1~50 都小瞭。接下來,猜 75。

​大瞭,那餘下的數字又排除瞭一半!75~100 都可以排除。接下來,猜 63(50 和 75 中間的數字)。

大瞭,但又可以排除一半數字!可以從 51~62 中選瞭!

接下來,猜 57(50 和 63 中間的數字)。對瞭!

猜數字遊戲還是一個挺好玩的遊戲,可以勾起你童年的回憶。這樣的遊戲也很適合在聚會上玩,今天一起來猜猜吧!來挑戰編寫一款猜數字Python代碼的高級版本哦!順便教大傢怎麼玩才能快速找到答案啦!

正文

創建一個可以猜數字的遊戲,它會在1~100以內隨機選擇一個數,然後讓玩傢挑戰在10輪以內猜出這個數字,每一輪都要告訴玩傢正確或者錯誤,如果出錯瞭,則告訴他數字是低還是高瞭,一旦玩傢猜測正確,或者玩傢用完瞭回合遊戲將會結束。遊戲結束後,可以讓玩傢選擇重新開始,消耗相應的金幣即可以繼續遊戲。

一、運行環境

 ​[開發環境]:

 python 3.6 運行代碼 

 pycharm 2021 輔助敲代碼 

 第三方模塊 pip install 模塊名 

 鏡像源安裝 pip install -i pypi.douban.com/simple/ +模塊名 

python 安裝包 安裝教程視頻 

pycharm 社區版 專業版 及 激活碼免費找我拿即可 !

二、代碼展示

主程序——

import random
import time
x1 = ['╠','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','╣']
for i in x1:
    print(i, end='')
    time.sleep(0.02)
print('\n加', end='')
time.sleep(0.05)
print('載', end='')
time.sleep(0.05)
print('中', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.')
print('歡迎來到猜數遊戲!')
lives = 10
tax = 1
ranswer = 0
coines = 300
number = random.randint(0, 100)
name = input('請輸入昵稱!')
if name != '爸爸':
    print('尊敬的用戶' + name + '您好')
    print('歡迎來到猜數遊戲!')
elif name == '爸爸':
    print('我是你爸爸!')
    print('你是我兒子!')
a = ['第' + str(tax) + '關!']
for l in a:
    time.sleep(0.05)
    print(l)
c = ['現有' + str(coines) + '金幣!' ]
for d in c:
    time.sleep(0.05)
    print(d)
while lives > 0:
    print('請', end='')
    time.sleep(0.05)
    print('輸', end='')
    time.sleep(0.05)
    print('入', end='')
    time.sleep(0.05)
    print('0', end='')
    time.sleep(0.05)
    print('-', end='')
    time.sleep(0.05)
    print('1', end='')
    time.sleep(0.05)
    print('0', end='')
    time.sleep(0.05)
    print('0', end='')
    time.sleep(0.05)
    print('的', end='')
    time.sleep(0.05)
    print('數', end='')
    time.sleep(0.05)
    print('字', end='')
    time.sleep(0.05)
    answer = input(':')
    ranswer = int(answer)
    if ranswer < number:
        print('''|( ̄Д  ̄)=凸
太小瞭!''')
        lives -= 1
        time.sleep(0.5)
    elif ranswer > number:
        print('''(︶︿︶)=凸
太大瞭!''')
        lives -= 1
        time.sleep(0.5)
    if ranswer == number:
        print('''(凸艸皿艸)凸
竟然對瞭!''')
        tax += 1
        lives = 8
        time.sleep(0.05)
        print('是', end='')
        time.sleep(0.05)
        print('否', end='')
        time.sleep(0.05)
        print('在', end='')
        time.sleep(0.05)
        print('玩', end='')
        time.sleep(0.05)
        print('?', end='')
        time.sleep(0.05)
        print('\n不', end='')
        time.sleep(0.05)
        print('玩', end='')
        time.sleep(0.05)
        print('試', end='')
        time.sleep(0.05)
        print('試', end='')
        time.sleep(0.05)
        print('!', end='')
        print('へ', end='')
        time.sleep(0.05)
        print('(', end='')
        time.sleep(0.05)
        print('`', end='')
        time.sleep(0.05)
        print('_', end='')
        time.sleep(0.05)
        print('ゝ', end='')
        time.sleep(0.05)
        print('´', end='')
        time.sleep(0.05)
        print(')', end='')
        time.sleep(0.05)
        print('▄',end='')
        time.sleep(0.05)
        print('︻',end='')
        time.sleep(0.05)
        print('┻',end='')
        time.sleep(0.05)
        print('┳',end='')
        time.sleep(0.05)
        print('═',end='')
        time.sleep(0.05)
        print('═',end='')
        time.sleep(0.05)
        print('━',end='')
        time.sleep(0.05)
        print('一')
        time.sleep(0.05)
        print('y', end='')
        time.sleep(0.05)
        print('/', end='')
        time.sleep(0.05)
        yn = input('n')
        if yn == 'n':
            print('殺過' + sr(tax) + '關!')
            print('   凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)')
            x1 = ['╠','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','╣']
            for i in x1:
                print(i, end='')
                time.sleep(0.02)
            break
        else:
            print('ヾ(@^▽^@)ノ還是好盆友!')
            lives = 10
            number = random.randint(0, 100)
            a = ['第' + str(tax) + '關!']
            for l in a:
                time.sleep(0.05)
                print(l)
            coines += 300
            c = ['現有' + str(coines) + '金幣!' ]
            for d in c:
                time.sleep(0.05)
                print(d)
            continue
    if lives == 0 and coines > 200:
        print('很', end='')
        time.sleep(0.05)
        print('遺', end='')
        time.sleep(0.05)
        print('憾', end='')
        time.sleep(0.05)
        print('!')
        time.sleep(0.05)
        print('機', end='')
        time.sleep(0.05)
        print('會', end='')
        time.sleep(0.05)
        print('耗', end='')
        time.sleep(0.05)
        print('盡', end='')
        print('!')
        print('是', end='')
        time.sleep(0.05)
        print('否', end='')
        time.sleep(0.05)
        print('在', end='')
        time.sleep(0.05)
        print('玩', end='')
        time.sleep(0.05)
        print('(', end='')
        time.sleep(0.05)
        print('消', end='')
        time.sleep(0.05)
        print('耗', end='')
        time.sleep(0.05)
        print('2', end='')
        time.sleep(0.05)
        print('0', end='')
        time.sleep(0.05)
        print('0', end='')
        time.sleep(0.05)
        print('金', end='')
        time.sleep(0.05)
        print('幣', end='')
        time.sleep(0.05)
        print(')', end='')
        time.sleep(0.05)
        print('y', end='')
        time.sleep(0.05)
        print('/', end='')
        time.sleep(0.05)
        YN = input('n') 
        if YN == 'y':
            print('ヽ( ̄ω ̄( ̄ω ̄〃)ゝ是條漢子!')
            lives = 10
            coines -= 300
            c = ['現有' + str(coines) + '金幣!' ]
            for d in c:
                time.sleep(0.05)
                print(d)
            number = random.randint(0, 100) 
        else:
            tax -= 1
            print('殺過' + str(tax) + '關!')
            print('   凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)凸(艸皿艸凸)')
            x2 = ['╠','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','╣']
            for j in x2:
                print(j, end='')
                time.sleep(0.02)
    elif lives == 0 and coines < 200:
        y = ['金幣不足!\n無法復活!']
        for f in y:
            print(f)
            time.sleep(0.05)
            tax -= 1
            print('殺過' + sr(tax) + '關!')
        break

三、效果展示

遊戲規則:猜數字高級版本是一個闖關版本—每10次機會猜,猜對即可獲取300金幣,猜錯即

遊戲失敗,初始金幣為300,每玩一次需要消耗200金幣。

1)第一關卡

2)隨機截圖

到此這篇關於Python實現不一樣的猜數字遊戲的示例代碼的文章就介紹到這瞭,更多相關Python猜數字遊戲內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: