Python: Check Anagram Strings

1. Introduction

An anagram is a play on words created by rearranging the letters of the original word to make a new word or phrase. For instance, the word 'listen' can be rearranged to 'silent'. In this post, we will walk through a Python program that checks if two given strings are anagrams of each other.

2. Program Overview

1. The program will take two input strings from the user.

2. It will then remove any white spaces and convert both strings to lowercase.

3. Afterwards, it will sort and compare the strings to determine if they are anagrams.

3. Code Program

# Python program to check if two strings are anagram of each other

# Input the two strings
str1 = input("Enter the first string: ")
str2 = input("Enter the second string: ")

# Removing white spaces and converting to lowercase
str1 = str1.replace(" ", "").lower()
str2 = str2.replace(" ", "").lower()

# Check if sorted strings are equal
if sorted(str1) == sorted(str2):
    print("The strings are anagrams.")
    print("The strings are not anagrams.")


Enter the first string: Listen
Enter the second string: Silent
The strings are anagrams.

4. Step By Step Explanation

1. The program begins by accepting two strings from the user.

2. It then cleans up the strings by removing any spaces and converting them to lowercase. This ensures that the comparison is case-insensitive and spaces don’t affect the outcome.

3. The strings are then sorted lexicographically, i.e., in dictionary order.

4. The sorted strings are then compared. If they are identical, the original strings are anagrams of each other. Otherwise, they're not.