PythonGUI:重新实现猜数字

在黑屏幕猜数字的时代已经过去啦~~,留下的只有回忆😊
当你的朋友还在努力撸出一堆控制台中的猜数字时,你悄悄地给他这个,😑

from tkinter import *
from tkinter import ttk
import random

a0= 1
cc= 0

def init():
    global a0
    a0= random.randint(1, 1000)

def calculate(*args):
    global cc
    cc= cc+ 1
    try:
        value = int(num_entry.get())
    except ValueError:
        value = 0

    lb3['text']= '您已经猜了%d次' % (cc)

    if value> a0:
        lb2['text']= '您猜的是%d,大了' % (value)
    elif value< a0:
        lb2['text']= '您猜的是%d,小了' % (value)
    else:
        lb2['text']= '猜对了!'
        init()

root = Tk()
root.title("猜数游戏")
init()

mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)

feet = StringVar()
meters = StringVar()


lb1= ttk.Label(mainframe, text='请输入一个1~1000的数字')
lb1.grid(column=1, row=1, sticky=(W, E))

num_entry = ttk.Entry(mainframe, width=7, textvariable=feet)
num_entry.grid(column=2, row=1, sticky=(W, E))

btn= ttk.Button(mainframe, text="试猜", command=calculate)
btn.grid(column=3, row=1, sticky=W)

lb2= ttk.Label(mainframe)
lb2.grid(column=2, row=2, sticky=W)

lb3= ttk.Label(mainframe)
lb3.grid(column=1, row=2, sticky=W)

for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5)

num_entry.focus()
root.bind('<Return>', calculate)

root.mainloop()

实现方法,运用输入框按钮标签实现,在基础功能上添加Tkinter

posted @ 2020-04-18 14:17  Aeterna_Gungnir  阅读(266)  评论(0编辑  收藏  举报