Это мой код в настоящее время:Мне нужна помощь в моей палиндромности программе в питоне
def main():
list1 = [(x) for x in input()]
if (list1 == list1.reverse()):
print("The sentence is a palindrome.")
else:
print("The sentence is not a palindrome.")
main()
И это не работает. Я сделал следующие настройки, когда я нашел их на форумах, и она работала:
def main():
list1 = [(x) for x in input()]
if (list1 == list1[::-1]):
print("The sentence is a palindrome.")
else:
print("The sentence is not a palindrome.")
main()
Мой вопрос, почему не первая версия работы? Он всегда печатает: предложение не является палиндром.
'list.reverse()' возвращает 'None', потому что список отменяется на месте. –
@ TigerhawkT3: 'reverseed()' возвращает итератор, и равенство не будет проверять содержимое, только если они являются одним и тем же объектом (даже «reverse» (l) == reverseed (l) 'is' False', поскольку они два отдельных итератора). –
'L.reverse' отменяет список на месте. Если вы попытаетесь присвоить его переменной, вы получите 'None'. –