import tkinter.messagebox import tkinter import random #导入撒酒疯 window = tkinter.Tk() window.geometry('800x400') window.title('猜数字游戏') good_price = random.randint(10, 100) input_price = random.randint(1, 100) def sumit(): global good_price if entry.get() == "" or entry.get().isdigit() == False: message_info.set("价格不合理") tkinter.messagebox.askquestion(title='警告',message='输入不合法') if entry.get().isdigit() == False: entry.delete(first=0, last=len(entry.get())) else: quess_price = int(entry.get()) if 10 <= quess_price<= 100 or entry.get().isspace(): if quess_price > good_price: message_info.set("猜大了") entry.delete(first=0,last=len(entry.get())) elif quess_price < good_price: message_info.set("猜小了") entry.delete(first=0, last=len(entry.get())) else: message_info.set("猜对了") price.set(f'{good_price}') entry.delete(first=0, last=len(entry.get())) askok=tkinter.messagebox.askokcancel(title="温馨提示",message="是不继续玩") if askok==True: price.set("***") message_info.set("请输入价格") good_price=random.randint(10,100) entry.delete(first=0, last=len(entry.get())) else: message_info.set("价格不合理") tkinter.messagebox.askquestion(title='警告', message='输入不合法') entry.delete(first=0, last=len(entry.get())) # #-------------界面------------------ lable_price_text = tkinter.Label(window, text='当前商品的价格是:', font=('楷体', 15)) price=tkinter.StringVar(value='***') lable_price = tkinter.Label(window,textvariable=price,font=('楷体',15)) lable_price_text.place(x=10,y=10,width=180,height=40) lable_price.place(x=180,y=10,width=180,height=40) 输入框左边的提示内容 lable_entry_text =tkinter.Label(window,text='请输入10-100的数字',font=('楷体',15)) lable_entry_text.place(x=10,y=60,width=180,height=40) 输入框设置 entry =tkinter.Entry(window,show="") entry.place(x=240,y=60,width=180,height=40) 提交按钮 submit_btn = tkinter.Button(window,text="提交",command=sumit) submit_btn.place(x=240,y=120,width=80,height=40) 清息框标签 message_lable=tkinter.Label(window,text='提示',font=('楷体',15)) message_lable.place(x=320,y=120,width=100,height=40) 定义一个消息框变量 message_info=tkinter.StringVar(value='请输入商品的价格') 提示变量信息根据输入内容 message_m=tkinter.Label(window,textvariable=message_info,font=('楷体',15)) message_m.place(x=320,y=160,width=200,height=80) window.mainloop()
用python窗口做一个猜数字大小的游戏,逻辑性强值得学习
于 2024-08-06 08:26:36 首次发布