0% found this document useful (0 votes)
332 views

How To Create A Simple Calculator Using Python - PDF 1234

The document provides code to create a simple calculator application using Python. It includes importing tkinter for the GUI, creating entry boxes for user input, labels, and buttons for the four basic math operations. Functions are defined for each operation to get the entry values, perform the calculation, and display the result. Together these components build an interactive calculator that can add, subtract, multiply and divide two numbers entered by the user.

Uploaded by

SHIVAM GAMING
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
332 views

How To Create A Simple Calculator Using Python - PDF 1234

The document provides code to create a simple calculator application using Python. It includes importing tkinter for the GUI, creating entry boxes for user input, labels, and buttons for the four basic math operations. Functions are defined for each operation to get the entry values, perform the calculation, and display the result. Together these components build an interactive calculator that can add, subtract, multiply and divide two numbers entered by the user.

Uploaded by

SHIVAM GAMING
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

How to Create a Simple Calculator using Python

April 10, 2020


In this tutorial, I’ll show you how to create a simple
calculator using Python.

To start, I’ll share the source code that you can use
right away. I’ll then perform a quick demonstration,
followed by an explanation of each component that
was used in the code to build the calculator
in Python.
This is how the calculator would look like:

Source Code to Create the Calculator using Python


You may run the following code in Python in order to
launch the calculator:
import tkinter as tk

root= tk.Tk()

canvas1 = tk.Canvas(root, width = 300,


height = 300)

canvas1.pack()

entry1 = tk.Entry (root)

canvas1.create_window(210, 100,
window=entry1)

entry2 = tk.Entry (root)

canvas1.create_window(210, 140,
window=entry2)

entry3 = tk.Entry (root)


canvas1.create_window(210, 240,
window=entry3)

label0 = tk.Label(root,
text='Calculator')

label0.config(font=('helvetica', 14))

canvas1.create_window(150, 40,
window=label0)

label1 = tk.Label(root, text='Type


Value 1:')

label1.config(font=('helvetica', 10))

canvas1.create_window(100, 100,
window=label1)

label2 = tk.Label(root, text='Type


Value 2:')

label2.config(font=('helvetica', 10))
canvas1.create_window(100, 140,
window=label2)

label3 = tk.Label(root,
text='Result:')

label3.config(font=('helvetica', 10))

canvas1.create_window(100, 240,
window=label3)

def add():

v1 = entry1.get()

v2 = entry2.get()

label4 = tk.Label(root, text=


float(v1)+float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label4)
buttonAdd = tk.Button(text='+',
command=add, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(90, 190,
window=buttonAdd)

def sub():

v1 = entry1.get()

v2 = entry2.get()

label5 = tk.Label(root, text=


float(v1)-float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label5)
buttonSub = tk.Button(text='–',
command=sub, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(140, 190,
window=buttonSub)

def mul():

v1 = entry1.get()

v2 = entry2.get()

label6 = tk.Label(root, text=


float(v1)*float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label6)

buttonMul = tk.Button(text='x',
command=mul, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(190, 190,
window=buttonMul)

def div():

v1 = entry1.get()

v2 = entry2.get()

label7 = tk.Label(root, text=


float(v1)/float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label7)

buttonDiv = tk.Button(text='/',
command=div, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)
canvas1.create_window(240, 190,
window=buttonDiv)

root.mainloop()

Using the Calculator in Python


You should now see the following display:

Let’s say that you want to sum the values of 4 and 3.


You can then type those values in the entry boxes,
and then click on the ‘+’ button to add those values:
The result that you’ll get is 7. Which is indeed the
sum of 4 and 3:
And if you decide to multiply those values instead,
then simply click on the ‘x’ to multiply the values, and
you’ll get the result of 12:

In the final section, I’ll explain each component that


was used in the code.

How to Build the Calculator in Python


Import the tkinter package and create the Canvas
The first thing that you’ll need to do is to import
the tkinter package. The tkinter package can be
used to create a Graphical User Interface (GUI) in
Python.
You’ll also need to add the canvas, which is your
GUI display in which you can place items, such as
buttons, entry boxes, etc.

import tkinter as tk

root= tk.Tk()

canvas1 = tk.Canvas(root, width = 300,


height = 300)

canvas1.pack()

Create the entry boxes


Next, you’ll need to create the entry boxes to collect
the data from the user.
The first two entry boxes are used to collect the
Value 1 and Value 2. While the third entry box is just
for visual purposes, where the result of the
calculation will be displayed.

entry1 = tk.Entry (root)


canvas1.create_window(210, 100,
window=entry1)

entry2 = tk.Entry (root)

canvas1.create_window(210, 140,
window=entry2)

entry3 = tk.Entry (root)

canvas1.create_window(210, 240,
window=entry3)

Add the labels


There are 4 labels that are currently displayed on
the GUI:

 Calculator
 Type Value 1:

 Type Value 2:

 Result:

You may edit the text, format and/or location where


the labels will be displayed.
label0 = tk.Label(root,
text='Calculator')

label0.config(font=('helvetica', 14))

canvas1.create_window(150, 40,
window=label0)

label1 = tk.Label(root, text='Type


Value 1:')

label1.config(font=('helvetica', 10))

canvas1.create_window(100, 100,
window=label1)

label2 = tk.Label(root, text='Type


Value 2:')

label2.config(font=('helvetica', 10))

canvas1.create_window(100, 140,
window=label2)
label3 = tk.Label(root,
text='Result:')

label3.config(font=('helvetica', 10))

canvas1.create_window(100, 240,
window=label3)

Create the functions and buttons


There are 4 functions in the code:

 add – to add the values


 sub – to subtract the values

 mul – to multiply the values

 div – to divide the values

For each of those 4 functions, there is an associated


button that can be used to trigger the function. For
example, the ‘buttonAdd’ will trigger the add function
to add the values that the user typed in the entry
boxes.
def add():

v1 = entry1.get()

v2 = entry2.get()
label4 = tk.Label(root, text=
float(v1)+float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label4)

buttonAdd = tk.Button(text='+',
command=add, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(90, 190,
window=buttonAdd)

def sub():

v1 = entry1.get()

v2 = entry2.get()
label5 = tk.Label(root, text=
float(v1)-float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label5)

buttonSub = tk.Button(text='–',
command=sub, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(140, 190,
window=buttonSub)

def mul():

v1 = entry1.get()

v2 = entry2.get()
label6 = tk.Label(root, text=
float(v1)*float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label6)

buttonMul = tk.Button(text='x',
command=mul, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(190, 190,
window=buttonMul)

def div():

v1 = entry1.get()

v2 = entry2.get()
label7 = tk.Label(root, text=
float(v1)/float(v2),font=('helvetica',
10, 'bold'),bg='white')

canvas1.create_window(210, 240,
window=label7)

buttonDiv = tk.Button(text='/',
command=div, bg='green', fg='white',
font=('helvetica', 9, 'bold'), width =
5)

canvas1.create_window(240, 190,
window=buttonDiv)

root.mainloop()

Don’t forget to add the root.mainloop() at the end.

You might also like