I don't understand why function plnd
returns correct results but plnd_v
does not.
Maybe someone here can explain what is happening behind the scenes. The sentence checked is:
sen = "A man, a plan, a canal: Panama"
and it is a palindrome.
def plnd(a):
filtered_rev = filter(lambda x: x.isalnum(),sen)
lower_rev = map(lambda x: x.lower(), filtered_rev)
rev = ''.join(lower_rev)[::-1]
print(len(rev))
filtered = filter(lambda x: x.isalnum(),sen)
lower = map(lambda x: x.lower(), filtered)
reg = ''.join(lower)
print(len(reg))
if rev == reg:
print(f"'{sen}' is a Palindrome! ")
else:
print("Not a palindrome")
def plnd_v(a):
filtered = filter(lambda x: x.isalnum(),sen)
lower = map(lambda x: x.lower(), filtered)
rev = ''.join(lower)[::-1]
reg = ''.join(lower)
if rev == reg:
print(f"'{sen}' is a Palindrome! ")
else:
print("Not a palindrome")