Python 简单的计算器,Python简单计算器,Python完成的一个简


Python完成的一个简单的计算器,能算简单的+,-,×,/运算,暂不支持键盘输入

from Tkinter import *def frame(root,side): w=Frame(root) w.pack(side=side,expand=YES,fill=BOTH) return wdef button(root,side,text,command=None): w=Button(root,text=text,command=command) w.pack(side=side,expand=YES,fill=BOTH) return wclass Calculator(Frame): def __init__(self):  Frame.__init__(self)  self.pack(expand=YES,fill=BOTH)  self.master.title("Simple Calculator")  self.master.iconname("calcl")  display=StringVar()  Entry(self,relief=SUNKEN,textvariable=display).pack(side=TOP,    expand=YES,fill=BOTH)  for key in ("123","456","789","-0."):   deyF=frame(self,TOP)   for char in key:    button(deyF,LEFT,char,lambda w=display,s="%s"%char: w.set\\      (w.get()+s))  opsF=frame(self,TOP)  for char in "+-*/=":   if char=='=':    btn=button(opsF,LEFT,char)    btn.bind("<ButtonRelease-1>",lambda e,s=self, w=display: \\      s.clac(w),'+')   else:    btn=button(opsF,LEFT,char,lambda w=display,c=char: w.set\\      (w.get()+' '+c+' '))  clearF=frame(self,BOTTOM)  button(clearF,LEFT,'Clr',lambda w=display: w.set(' ')) def clac(self,display):  try:   display.set(eval(display.get()))  except SyntaxError:   display.set("ERROR")  except ZeroDivisionError:   display.set("ZeroDivisionError")if __name__=="__main__": Calculator().mainloop()#该片段来自于http://byrx.net

评论关闭