用python窗口做一个猜数字大小的游戏,逻辑性强值得学习

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()
  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青龙摄影

你的鼓励是我创作的动力,支持下

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值