質問の言い回しは次のとおりです。文字列である単一のパラメーター astr を使用して、二重文字と呼ばれる再帰関数を記述します。関数は、astr が「2 文字」 (同じ文字が 2 回連続して出現する) を含む文字列である場合に True を返し、それ以外の場合は False を返します。たとえば、2 文字 ("hello") は True を返し、2 文字 ("hi there") は False を返します。
-- 誰かに仕事を頼んでいるわけではありませんが、これが私が持っているものです。return True を Print('True') に、またはその逆を False に置き換えると、それらが出力されるように、正しく流れることがわかります。再帰関数はブール値でうまく機能しませんか、それとも露骨に明らかな何かが欠けていますか?
def double_letters(astr):
if len(astr) >= 2:
if astr[0] == astr[1]:
return True
else:
double_letters(astr[1:])
else:
return(False)