import tkinter as tk
import tkinter.messagebox
import random
# 设置主窗口
win = tk.Tk()
win.title('Welcome to 猜数字小游戏')
win.geometry('300x400')
# 输入框要输入的内容
tk.Label(win, text='请输入你要猜的数:').place(x=100, y=170)
# 设置输入框
var_step = tk.StringVar()
var_step.set('')
entry_step = tk.Entry(win, textvariable=var_step)
entry_step.place(x=100, y=200)
i = 5 # 猜测次数为5次
num2 = 0 # 全局变量,用来存放系统生成的随机数
def dispose():
conjecture_num = var_step.get() # 获取用户输入的数
global i # 声明变量 i 使其可以被修改
try:
conjecture_num = int(conjecture_num) # 把用户猜的数变成整数赋给conjecture_num
if i % 5 == 0: # 每猜5次,重置系统的随机数
num1 = int(random.randint(0, 100)) #生成随机数
global num2 # 声明全局变量 num2 使其可被修改
num2 = num1
# 判断用户猜的数是否正确
if conjecture_num == int(num2):
tk.messagebox.showinfo(title='完成', message="恭喜你猜对了!")
i = 5 # 猜对的话,则次数变为5,准备重置随机数
elif conjecture_num < int(num2):
i -= 1
tk.messagebox.showerror(title='Error', message='数字太小了,您还剩{}次机会'.format(i % 5))
elif conjecture_num > (num2):
i -= 1
tk.messagebox.showerror(title='Error', message='数字太大了,您还剩{}次机会'.format(i % 5))
except BaseException as e: # 若出现异常,弹出错误窗口
tk.messagebox.showerror(title='错误', message='请输入整数')
# 设置按钮
btn_dealt = tk.Button(win, text='确认', command=dispose) # 点下按钮,调用函数dispose
btn_dealt.place(x=100, y=290)
win.mainloop()
窗口猜数字
最新推荐文章于 2023-03-28 15:16:25 发布