How to Check for Prime Numbers in Python: A Beginner’s Guide

Contents

    Certainly! Here’s a detailed step-by-step guide on How to Check for Prime Numbers in Python designed for beginners.


    Prime numbers are numbers greater than 1 that have no divisors other than 1 and themselves. Checking whether a number is prime is a common problem in programming and a great exercise to practice loops, conditionals, and basic logic.


    Step 1: Understand What a Prime Number Is

    • A prime number is greater than 1.
    • It has no positive divisors other than 1 and itself.
    • Examples: 2, 3, 5, 7, 11, 13, 17, …


    Step 2: Understand the Problem Requirements

    You want to write a program that:

    • Takes an integer input from the user.
    • Checks if the number is prime.
    • Outputs whether it is prime or not.


    Step 3: Plan the Logic to Check for Primality

    To check if a number n is prime:

    1. If n is less than or equal to 1, it is not prime.
    2. Check all numbers starting from 2 up to n-1 (or optimized up to √n) to see if any divides n evenly.
    3. If any such number exists where n % i == 0, then n is not prime.
    4. If no divisors are found, n is prime.


    Step 4: Write a Simple Python Program to Check Prime Numbers

    python

    num = int(input("Enter an integer: "))

    if num <= 1:
    print(f"{num} is not a prime number.")
    else:

    is_prime = True  # Assume number is prime until proven otherwise
    for i in range(2, num):
    if num % i == 0:
    is_prime = False
    break
    # Step 4d: Print the result based on check
    if is_prime:
    print(f"{num} is a prime number.")
    else:
    print(f"{num} is not a prime number.")


    Step 5: Optimize the Code to Improve Efficiency

    Why optimize?

    Checking divisors up to num-1 is inefficient for large numbers.

    How to optimize?

    • You only need to check divisors up to the square root of the number.
    • If no factors found up to sqrt(num), then the number is prime.

    Updated Code with Optimization:

    python
    import math

    num = int(input("Enter an integer: "))

    if num <= 1:
    print(f"{num} is not a prime number.")
    else:
    is_prime = True

    for i in range(2, int(math.sqrt(num)) + 1):
    if num % i == 0:
    is_prime = False
    break
    if is_prime:
    print(f"{num} is a prime number.")
    else:
    print(f"{num} is not a prime number.")


    Step 6: Turn Your Code Into a Reusable Function

    It’s good practice to put your prime checking logic into a function.

    python
    import math

    def is_prime(num):
    if num <= 1:
    return False
    for i in range(2, int(math.sqrt(num)) + 1):
    if num % i == 0:
    return False
    return True

    number = int(input("Enter an integer: "))
    if is_prime(number):
    print(f"{number} is a prime number.")
    else:
    print(f"{number} is not a prime number.")


    Step 7: Test Your Program With Sample Inputs

    Try numbers like:

    • -10 (not prime)
    • 0 (not prime)
    • 1 (not prime)
    • 2 (prime)
    • 17 (prime)
    • 18 (not prime)
    • 29 (prime)
    • 100 (not prime)


    Step 8: Optional Enhancements

    • Handle non-integer input: Use try-except to validate input.
    • Check multiple numbers: Allow user to input a list or loop repeatedly.
    • Print all primes up to N: Write a function to print prime numbers up to a given limit.


    Example: Handling Invalid Input

    python
    import math

    def is_prime(num):
    if num <= 1:
    return False
    for i in range(2, int(math.sqrt(num)) + 1):
    if num % i == 0:
    return False
    return True

    try:
    number = int(input("Enter an integer: "))
    if is_prime(number):
    print(f"{number} is a prime number.")
    else:
    print(f"{number} is not a prime number.")
    except ValueError:
    print("Invalid input! Please enter a valid integer.")


    • Prime numbers are numbers > 1 with no divisors other than 1 and itself.
    • Loop only up to the square root for efficiency.
    • Use functions to make code reusable and clean.
    • Validate user input for better user experience.

    Now you are ready to check prime numbers in Python! Keep practicing by writing your own variations of the program.


    If you want, I can also help you build advanced prime checking methods or GUI programs. Just let me know!

    Updated on June 3, 2025
    Was this article helpful?

    Leave a Reply

    Your email address will not be published. Required fields are marked *