Python实现猜数字小游戏

首先需求一共有五次猜测机会,在五次机会中才对就赢了,结束游戏,五次都猜错就输了,也结束游戏。首先先画个草图,这是我画的草图

Python实现猜数字小游戏_第1张图片

再根据草图编写一个窗口,一个Label,一个Entry,一个按钮,然后编写功能,将功能绑定函数

import random
from tkinter import *
NUM=random.randint(1,101)#随机数
time=[]#猜测次数
def Sstart():
    """
    先判断结果,在判断猜测数和随机数的大小关系,然后在判断结果
    :return: 
    """
    global NUM,time
    if result() == None:
        if NUM == int(Vgue.get()):
            print("猜对了",NUM)
            time.append(True)
            result()
        elif NUM < int(Vgue.get()):
            print("猜错了,偏大了")
            Vgue.set("")
            time.append(False)
            result()
        elif NUM > int(Vgue.get()):
            print("猜错了,偏小了")
            Vgue.set("")
            time.append(False)
            result()
 
def result():
    """
    根据结果做出判断是否继续玩游戏
    :return: 
    """
    if len(time) <= 5 and time.count(True) == 1:
        print("i win the game")
        window.destroy()
    elif len(time) == 5 and time.count(False) == 5:
        print("i lose the game")
        window.destroy()
    else:
        return None
 
window=Tk()
window.title("猜数字")
window.geometry("400x100+100+100")
frametar=Frame(window)
flogin=Frame(window)
Vgue=StringVar()
 
Gue_ture=Label(frametar,fg="black",font="微软雅黑,20",text="请猜猜看这次随机数是:").grid(column=0,row=0)#显示标签
Gue=Entry(frametar,fg="black",font="微软雅黑,20",text=Vgue).grid(column=1,row=0)#随机数输入框
Start=Button(flogin,text="START",fg="Blue",command=Sstart,width=30).grid(column=0,row=1)#开始按钮
frametar.grid()
flogin.grid()
mainloop()

以上所述是小编给大家介绍的Python实现猜数字小游戏,希望对大家有所帮助。在此也非常感谢大家对脚本之家网站的支持!

你可能感兴趣的:(Python实现猜数字小游戏)