Код ниже выполняет то, что вы хотите. Убедитесь, что пробелы ('') включены в ваш список bad_character. Я использовал метод replace (), чтобы сделать удаление плохих символов немного чище, и вы можете использовать метод lower () для всей строки сразу, вместо того, чтобы делать это символ за символом. Кроме того, вы можете пропустить if / else в конце функции, добавив сравнение element == element[::-1]
, потому что это приведет к желаемому логическому значению.
def ispalindrome(alist):
outputlist = []
bad_character = [' ']
for element in alist:
for character in bad_character:
element = element.replace(character, '')
element = element.lower()
outputlist.append(element == element[::-1])
return outputlist
test_list = ['Madam', 'A nut for a jar of Tuna', 'I love DSAG']
print(ispalindrome(test_list))
print(test_list)