两种计算器小程序对比

 1 #计算器小程序一
 2 from tkinter import *
 3 
 4 master=Tk()
 5 
 6 #验证第一个输入框
 7 def makesure1():
 8     if e1.get().isdigit():
 9         return True
10     else:
11         e1.delete(0,END)
12         v.set('请输入数字!')
13         return False
14 #验证第二个输入框
15 def makesure2():
16     if e2.get().isdigit():
17         return True
18     else:
19         e2.delete(0,END)
20         v.set('请输入数字!')
21         return False
22     
23 #加法运算函数    
24 def calc():
25     result =int(e1.get())+int(e2.get())
26     v3.set(result)
27     
28 
29 #输入框Entry
30 e1=Entry(master,validate='focusout',validatecommand=makesure1)#焦点移出之后开始验证
31 e1.grid(row =0,column=0,padx=10,pady=10)
32 
33 e2=Entry(master,validate='focusout',validatecommand=makesure2)
34 e2.grid(row=0,column=2,padx=10,pady=10)
35 v = StringVar()
36 v3=StringVar()
37 e3=Entry(master,textvariable=v3,state='readonly')
38 e3.grid(row=0,column=4,padx=10,pady=10)
39 
40 #运算符Label
41 l1 = Label(master,text='+')
42 l1.grid(row=0,column=1)
43 
44 l2 = Label(master,text='=')
45 l2.grid(row=0,column=3)
46 
47 l3=Label(master,textvariable=v)
48 l3.grid(row=2,column=2)
49 
50 #运算命令button
51 b1 = Button(master,text='开始计算',command=calc)
52 b1.grid(row=1,column=2,padx=10,pady=10)
53 
54 mainloop()
 1 #计算器小程序二
 2 from tkinter import *
 3 
 4 master=Tk()
 5 
 6 #验证输入框
 7 def test(content):
 8     return content.isdigit()
 9 
10 #技能包冷却
11 makesure=master.register(test)
12 
13 #计算函数
14 def calc():
15     result=int(e1.get())+int(e2.get())
16     v3.set(result)
17 
18 #输入框组件
19 e1=Entry(master,validate='key',
20          validatecommand=(makesure,'%P'))
21     #以上,当输入框被编辑的时候即开启验证,如果验证返回为真则会保留,否则输不进去
22 e1.grid(row=0,column=0,padx=10,pady=10)
23 
24 e2=Entry(master,validate='key',
25          validatecommand=(makesure,'%P'))
26 e2.grid(row=0,column=2,padx=10,pady=10)
27 
28 v3=StringVar()
29 e3=Entry(master,textvariable=v3,state='readonly')
30 e3.grid(row=0,column=4,padx=10,pady=10)
31 
32 #运算符号组件
33 l1=Label(master)
34 l1.grid(row=0,column=1,padx=10,pady=10)
35 
36 l2=Label(master)
37 l2.grid(row=0,column=3,padx=10,pady=10)
38 
39 #命令按钮组件
40 b1=Button(master,text='开始计算',command=calc)
41 b1.grid(row=1,column=2,padx=10,pady=10)
42 
43 mainloop()
原文地址:https://www.cnblogs.com/themost/p/6767937.html