Я попытался написать рекурсивную функцию, которая говорит, что если строка является палиндромом, но все это я получаю бесконечный цикл, и я не знаю, в чем проблемаPalindrome рекурсивная функция
def isPalindrome(S):
listush=list(S) #listush=['a', 'b', 'n', 'n', 'b', 'a']
length=len(listush) #length=6
if length==0 or length==1:
return S, "is a palindrome!"
elif listush[0]!=listush[-1]:
return S, "is not a palindrome!"
else:
del listush[0]
del listush[-1]
return isPalindrome(S)
print isPalindrome("abnnba")
'del listush [0]' и 'listush [-1]' не удалять символы из 'S', список больше не имеет отношения к' S'. Вы передаете исходную строку в рекурсию, не удаляя передние и задние символы. – dhke