Так что задача состоит в том, что вы должны написать функцию рекурсии, которая подсчитывает количество «двойных» букв в строке, например, строка «hmmm» вернет 1, а строка «hmmm» вернет 1, хммм»вернется 2 и что строка„АВВ“будет возвращать 1. Мой код здесь:Python Recursion Двойные буквы
def num_double_letters(astr):
if astr == "" or len(astr) == 1:
return 0
elif len(astr) == 2:
if astr[0] == astr[1]:
return 1 + num_double_letters(astr[1:])
else:
return 0 + num_double_letters(astr[1:])
elif astr[0] != astr[1]:
return 0 + num_double_letters(astr[1:])
elif astr[0] == astr[1] != astr[2]:
return 1 + num_double_letters(astr[1:])
elif astr[0] == astr[1] == astr[2]:
return 0 + num_double_letters(astr[1:])
Моя проблема заключается в том, что строка с 4-мя одинаковыми буквами = 1, когда ее предполагается = 2, а также является там более чистый способ сделать это?
Спасибо, сэр !! теперь, когда я смотрю на ваши [1:] и [2:], становится намного больше смысла. – Newb18