-
Notifications
You must be signed in to change notification settings - Fork 215
/
Copy pathis_pallindrome.py
32 lines (26 loc) · 1.15 KB
/
is_pallindrome.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
'''
Write a function that takes in a non-empty string and that returns a boolean
representing whether the string is a palindrome.
Sample Input: abba
Output: True
Sample Input: aberba
Output: False
Explanation:
In this implementation, we use Python's filter() function to remove all non-alphanumeric characters
from the string and lower() method to convert the string to lowercase. Then we check if the reversed
string is equal to the original string using the slice notation [::-1]. If the two strings are equal,
we return True, indicating that the input string is a palindrome; otherwise, we return False.
'''
def is_palindrome(s: str) -> bool:
"""
This function takes in a non-empty string and returns a boolean indicating
whether the string is a palindrome or not.
Parameters:
s (str): The input string
Returns:
bool: True if s is a palindrome, False otherwise
"""
# Remove all non-alphanumeric characters and convert to lowercase
s = ''.join(filter(str.isalnum, s)).lower()
# Check if the reversed string is equal to the original string
return s == s[::-1]