1. Introduction
In this blog post, we will learn how to write a Python program to check if a given string is a palindrome.
A palindrome is a word, phrase, number, or other sequence of characters that reads the same backward and forward (ignoring spaces, punctuation, and capitalization). Examples include "radar", "level", and "deified". In this blog post, we'll create a Python program to check if a given string is a palindrome.
2. Program Overview
Our program will take a string input from the user.
It will then remove any non-alphanumeric characters and convert the string to lowercase to ensure consistent comparison.
The program will compare the original string with its reverse to determine if it's a palindrome.
3. Code Program
def is_palindrome(s):
# Convert the string to lowercase and remove non-alphanumeric characters
cleaned_string = ''.join(e for e in s if e.isalnum()).lower()
# Compare the cleaned string with its reverse
return cleaned_string == cleaned_string[::-1]
# Input string from user
user_input = input("Enter a string: ")
# Check and display if the string is a palindrome
if is_palindrome(user_input):
print("The given string is a palindrome!")
else:
print("The given string is not a palindrome!")
Output:
For the input "A man, a plan, a canal, Panama", the program will output: "The given string is a palindrome!"
4. Step By Step Explanation
1. The function is_palindrome first removes any character from the string that isn't alphanumeric using a combination of a join method and a for loop with an if condition.
2. It then converts the cleaned string to lowercase.
3. The function compares this cleaned string with its reverse (achieved with [::-1] slicing) to determine if it's a palindrome.
4. The main part of the program takes the user input, processes it through this function, and prints the appropriate message based on the result.
Comments
Post a Comment
Leave Comment