Попытка получить этот вывод (операции на палиндромах в Python) - PullRequest
0 голосов
/ 19 января 2020

Я пытаюсь получить свои коды для печати этого вывода.

это займет в строке. принять слово (что я должен делать), я должен сравнить 1-е слово и последнее слово в строке, тогда, если это палиндром, он вернет истину. если нет, он вернет false, вот мой код

def palindrome_word(a_str):
outputlist = []
bad_character = [' ', '?', ',']
for element in a_str:
    for words in bad_character:
        element = element.replace(words, '')
        element = element.lower()
        outputlist.append(element == element[::-1])
        return outputlist
my_string=["King, are you you are king?"]
print(palindrome_word(my_string))

Я пытаюсь использовать это как вывод, но выдает ошибки:

[True, False]

Мой вывод: [Ложь, Ложь]

1 Ответ

2 голосов
/ 19 января 2020

Очевидно, вы хотите изменить порядок слов, а не символов, поэтому вы должны split на пробел, а не удалять его:

words = element.split()
words == words[::-1]

, где bad_character = ['?', ','] (в основном любая пунктуация, так что вы могли бы также используйте string.punctuation.

...