Python: Find palindromes in a given list of strings using Lambda

Python Lambda: Exercise-18 with Solution

Write a Python program to find palindromes in a given list of strings using Lambda.

According Wikipedia - A palindromic number or numeral palindrome is a number that remains the same when its digits are reversed. Like 16461, for example, it is "symmetrical". The term palindromic is derived from palindrome, which refers to a word (such as rotor or racecar) whose spelling is unchanged when its letters are reversed. The first 30 palindromic numbers (in decimal) are: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, 55, 66, 77, 88, 99, 101, 111, 121, 131, 141, 151, 161, 171, 181, 191, 202,...

Sample Solution:

Python Code :

texts = ["php", "w3r", "Python", "abcd", "Java", "aaa"]
print("Orginal list of strings:")
result = list(filter(lambda x: (x == "".join(reversed(x))), texts)) 
print("\nList of palindromes:")

Sample Output:

Orginal list of strings:
['php', 'w3r', 'Python', 'abcd', 'Java', 'aaa']

List of palindromes:
['php', 'aaa']

Visualize Python code execution:

The following tool visualize what the computer is doing step-by-step as it executes the said program:

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to find the second lowest grade of any student(s) from the given names and grades of each student using lists and lambda.
Next: Write a Python program to find all anagrams of a string in a given list of strings using lambda.

What is the difficulty level of this exercise?

Test your Python skills with w3resource's quiz

Python: Tips of the Day

Returns all the elements of a list except the last one


def tips_initial(lst):
  return lst[0:-1]

print(tips_initial([1, 2, 3, 4]))


[1, 2, 3]