Mastering Python: Build a Fully Functional Calculator Step-by-Step

๐Ÿ”ง Mastering Python: Build a Fully Functional Calculator Step-by-Step

Estimated reading time: 7–10 minutes
Author: Darlington Mbawike – DarchumsTech

๐Ÿง  Introduction: Why Build a Calculator?

Python is known for its simplicity and readability, making it the perfect language for beginners. In this tutorial, you'll build a complete calculator app and learn Python basics such as:

  • Taking user input
  • Conditional logic
  • Defining functions
  • Error handling

๐Ÿงฐ Tools You’ll Need

  • Python 3.x installed on your computer
  • A code editor like VS Code, PyCharm, or Replit

๐Ÿ—‚️ Step 1: Arithmetic Functions

def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

def multiply(x, y):
    return x * y

def divide(x, y):
    if y == 0:
        return "Error: Cannot divide by zero."
    return x / y

๐ŸŽฏ Step 2: User Menu

print("Welcome to DarchumsTech Calculator")
print("Choose an operation to perform:")
print("1. Add")
print("2. Subtract")
print("3. Multiply")
print("4. Divide")

๐Ÿ”ข Step 3: Numeric Input

try:
    num1 = float(input("Enter first number: "))
    num2 = float(input("Enter second number: "))
except ValueError:
    print("Invalid input! Please enter numeric values.")
    exit()

๐Ÿงช Step 4: Logic

if choice == '1':
    print("Result:", add(num1, num2))
elif choice == '2':
    print("Result:", subtract(num1, num2))
elif choice == '3':
    print("Result:", multiply(num1, num2))
elif choice == '4':
    print("Result:", divide(num1, num2))
else:
    print("Invalid choice!")

♻️ Step 5: Continuous Operation

while True:
    print("\n--- Simple Calculator ---")
    print("1. Add\n2. Subtract\n3. Multiply\n4. Divide\n5. Exit")

    choice = input("Enter choice: ")
    if choice == '5':
        print("Goodbye!")
        break

    try:
        num1 = float(input("First number: "))
        num2 = float(input("Second number: "))
    except ValueError:
        print("Invalid input.")
        continue

    if choice == '1':
        print("Result:", add(num1, num2))
    elif choice == '2':
        print("Result:", subtract(num1, num2))
    elif choice == '3':
        print("Result:", multiply(num1, num2))
    elif choice == '4':
        print("Result:", divide(num1, num2))
    else:
        print("Invalid choice.")

✨ Add Extra Features

  • Exponentiation (x ** y)
  • Square root with math.sqrt()
  • GUI with Tkinter
  • Logging to text file

๐Ÿ“š Final Summary Code

def add(x, y): return x + y
def subtract(x, y): return x - y
def multiply(x, y): return x * y
def divide(x, y): return "Error" if y == 0 else x / y

while True:
    print("\n--- Python Calculator ---")
    print("1. Add\n2. Subtract\n3. Multiply\n4. Divide\n5. Exit")

    choice = input("Choose (1-5): ")
    if choice == '5':
        print("Exiting. See you soon!")
        break

    try:
        a = float(input("First number: "))
        b = float(input("Second number: "))
    except ValueError:
        print("Invalid input.")
        continue

    if choice == '1':
        print("Result:", add(a, b))
    elif choice == '2':
        print("Result:", subtract(a, b))
    elif choice == '3':
        print("Result:", multiply(a, b))
    elif choice == '4':
        print("Result:", divide(a, b))
    else:
        print("Invalid selection.")

๐Ÿš€ Conclusion

You've successfully built a working calculator in Python! This project introduces you to functions, loops, conditionals, and user input – the building blocks of Python development. Stay tuned for more beginner-to-advanced Python tutorials on DarchumsTech.

๐Ÿ’ก Call to Action

๐Ÿ“ฌ Got questions or need help? Comment below!
๐Ÿง‘‍๐Ÿ’ป Follow DarchumsTech for more weekly tutorials!

Comments