I have a code to check whether a word is palindrome or not:
str = input("Enter the string") l = len(str) p = l-1 index = 0 while index < p: if str[index] == str[p]: index = index + 1 p = p-1 print("String is a palindrome") break else: print("string is not a palindrome")
If a word is inputted, for example : rotor , I want the program to check whether this word is palindrome and give output as “The given word is a palindrome”.
But I’m facing problem that, the program checks first r and r and prints “The given word is a palindrome” and then checks o and o and prints “The given word is a palindrome”. It prints the result as many times as it is checking the word.
I want the result to be delivered only once. How to change the code?
Advertisement
Answer
Just reverse the string and compare it against the original
string_to_check = input("Enter a string") if string_to_check == string_to_check[::-1]: print("This is a palindrome") else: print("This is not a palindrome")