據說Python基礎很差的人都沒法寫出來的一個小遊戲:猜數字!(本篇文章案例只適合新手,老司機請繞路)

前言

不要小看這個簡簡單單的猜數字小遊戲,它但是涉及到不少的基礎知識點的:input函數、字符串、while循環、if條件判斷語句、break語句。git

那讓咱們來由淺入深的講講本次的案例dom

遊戲介紹:程序本身有一個數字,用戶輸入一個數字,兩個數字進行比較。

開始代碼,先來一個最簡單的版本

1. 有一個數字

my_num = 5

 

2. 輸入一個數字

you_num = input("請輸入一個數字:")
you_num = int(you_num)

 

3. 猜數字結果

# 一個等於號是複製符號 兩個等於號纔是等於號
print(my_num, you_num)
print(type(my_num), type(you_num))

# 不一樣類型之間,確定是不會相等的
if my_num == you_num:
    print(f'恭喜你猜對了,當前的數字爲{my_num}')
else:
    print(f'你太菜了,這都能猜錯, 當前的數字爲{my_num}, 你輸入的數字是{you_num}')

 


是否是很簡單,這個是隻能猜一次的,無論對錯。函數

下面的就開始升級了,能一直猜,直到猜對爲止spa

升級版

若是我要猜三次、N次,直到猜對位置code

times = 1
while True:
    print(f'開始第 {times} 次猜數字')

    you_num = input("請輸入一個數字(1-10):")
    # 若是輸入的內容不是一個數字
    if you_num.isdigit():
        you_num = int(you_num)

        if my_num == you_num:
            print(f'恭喜你猜對了,當前的數字爲{my_num}')
            break  # 猜對了纔會進入第 22 行
        else:  # 猜錯了纔會進入的 23 行
            if my_num > you_num:
                print('數字猜小了')
            else:1
                print('數字猜大了')
        if times == 10:
            print(f'你已經沒有機會了')
            break

        times += 1
    else:
        print('輸入錯誤,請輸入一個數字')

 

隨機數版,1~100,猜對位置

# random 是一個內置的隨機函數模塊
import random

my_num = random.randint(1, 100)

times = 1
while True:
    print(f'開始第 {times} 次猜數字')
    you_num = input("請輸入一個數字(1-100):")
    you_num = int(you_num)

    if my_num == you_num:
        print(f'恭喜你猜對了,當前的數字爲{my_num}')
        break
    else:
        if my_num > you_num:
            print('數字猜小了')
        else:
            print('數字猜大了')

    times += 1

 

相關文章
相關標籤/搜索