Trochę lepiej z punktu widzenia zasobów. Zwalniasz plik po wyjściu z zakresu with:
with open('hasla.txt', 'r') as f:
for word in f:
word = word.rstrip('\n')
if word == word[::-1]:
print(word)
Można jeszcze to rozwiązać wyrażeniem generatorowym ale to w mojej ocenie mniej czytelne (i nieco mniej wydajne). Tu z premedytacją z małą niezręcznością :)
with open('hasla.txt', 'r') as f:
for result in (word for word in f if word.rstrip('\n') == word.rstrip('\n')[::-1]):
print(result, end='')