﻿ Python: Test whether the given strings are palindromes - w3resource

# Python: Test whether the given strings are palindromes

## Python Programming Puzzles: Exercise-12 with Solution

Write a Python program to check whether the given strings are palindromes or not. Return True otherwise False.

```Input:

Output:
[False, True, True, False, False]
```

Visual Presentation:

Sample Solution-1:

Python Code:

``````# License: https://bit.ly/3oLErEI

# Define a function named 'test' that takes a list of strings 'strs' as input
def test(strs):
# Use a list comprehension to check if each string in 'strs' is a palindrome (reads the same forwards and backwards)
return [s == s[::-1] for s in strs]

# Create a list of strings 'strs' with specific elements

# Print the original list of strings
print("Original strings:")
print(strs)

# Print a message indicating the operation to be performed on the list
print("\nTest whether the given strings are palindromes or not:")

# Print the result of the test function applied to the 'strs' list
print(test(strs))
``````

Sample Output:

```Original strings:

Test whether the given strings are palindromes or not:
[False, True, True, False, False]
```

Flowchart:

Sample Solution-2:

Python Code:

``````# Define a function named 'test' that takes a list of strings 'strs' as input
def test(strs):
# Initialize an empty list 'results' to store the results of palindrome tests
results = []

# Iterate through each string in 'strs'
for _ in strs:
# Padding each string with spaces on both sides
# By default, the pad_to parameter is 50
s = ' ' * 50 + _ + ' ' * 50

# Initialize variables 'i' and 'j' for indexing the string 's'
i = 0
j = len(s) - 1

# Use a while loop to check if the string 's' is a palindrome
while i < j:
if s[i] != s[j]:
# If characters at positions 'i' and 'j' are not equal, append False to 'results' and break out of the loop
results.append(False)
break
else:
# Increment 'i' and decrement 'j' to compare the next pair of characters
i += 1
j -= 1
else:
# If the while loop completes without a break, append True to 'results'
results.append(True)

# Return the list of results
return results

# Create a list of strings 'strs' with specific elements

# Print the original list of strings
print("Original strings:")
print(strs)

# Print a message indicating the operation to be performed on the list
print("\nTest whether the given strings are palindromes or not:")

# Print the result of the test function applied to the 'strs' list
print(test(strs))
``````

Sample Output:

```Original strings:

Test whether the given strings are palindromes or not:
[False, True, True, False, False]
```

Flowchart:

Python Code Editor :

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

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿