Проверить, является ли слово палиндромом, действительно просто:
word[::-1] == word
или, если ваше определение палиндрома включено, скажем, Eve
:
word_lower = word.lower()
word_lower[::-1] == word_lower
Итак, вы Программа может быть уменьшена до:
def find_palindroms(text):
palindrom_list = []
for line in text:
for word in line.rstrip().split():
word_lower = word.lower() # might be unnecessary
if word_lower[::-1] == word_lower:
palindrom_list.append(word)
return palindrom_list
with open("dictionary.txt", "r") as file:
print(find_palindroms(file))