Почему функция is_palindrome не видит метода .lower()?

Если вводить слово с большой буквы - ответ "False", с маленькой - все ок:

def is_palindrome(word):
  reversed_word = word[::-1]
  return word == reversed_word.lower()
print(is_palindrome(word='Xex'))

Ответы (1 шт):

Автор решения: Иван Ипатов

По факту вы сравниваете is_palindrome('Хех'):

Хех(параметр функции) = хех(перевёрнутая строка, с lower())

Из-за регистра это сравнение даёт False

Вам нужно добавить lower() к переменной word для сравнения

def is_palindrome(word):
  reversed_word = word[::-1]
  return word.lower() == reversed_word.lower()
print(is_palindrome('Алла')) # True
→ Ссылка