# A simple calculator : Calculator « Application « Python

Home
Python
 1 2D 2 Application 3 Buildin Function 4 Class 5 Data Structure 6 Data Type 7 Database 8 Development 9 Dictionary 10 Event 11 Exception 12 File 13 Function 14 GUI Pmw 15 GUI Tk 16 Language Basics 17 List 18 Math 19 Network 20 String 21 System 22 Thread 23 Tuple 24 Utility 25 XML
 Python » Application » Calculator Screenshots
A simple calculator
 ``` from Tkinter import * def frame(root, side):      w = Frame(root)     w.pack(side=side, expand=YES, fill=BOTH)     return w def button(root, side, text, command=None):      w = Button(root, text=text, command=command)      w.pack(side=side, expand=YES, fill=BOTH)     return w class Calculator(Frame):     def __init__(self):         Frame.__init__(self)         self.option_add('*Font', 'Verdana 12 bold')         self.pack(expand=YES, fill=BOTH)         self.master.title('Simple Calculator')         self.master.iconname("calc1")         display = StringVar()       Entry(self, relief=SUNKEN,      textvariable=display).pack(side=TOP, expand=YES,        fill=BOTH)         for key in ("123", "456", "789", "-0."):             keyF = frame(self, TOP)             for char in key:                 button(keyF, LEFT, char,                        lambda w=display, c=char: w.set(w.get() + c))         opsF = frame(self, TOP)         for char in "+-*/=":             if char == '=':                 btn = button(opsF, LEFT, char)                 btn.bind('',                          lambda e, s=self, w=display: s.calc(w), '+')             else:                 btn = button(opsF, LEFT, char,                    lambda w=display, s=' %s '%char: w.set(w.get()+s))         clearF = frame(self, BOTTOM)         button(clearF, LEFT, 'Clr', lambda w=display: w.set(''))     def calc(self, display):         try:             display.set('eval(display.get())')         except:             display.set("ERROR") if __name__ == '__main__':     Calculator().mainloop()                    ```
Related examples in the same category
 1 A calculator