关于python:递归函数不返回true或false,而是正确地流动并工作?

Recursive function not returning True or False, but flows correctly and works?

问题的措辞如下:编写一个名为双字母的递归函数,并使用一个字符串作为单参数astr。如果astr是包含"双字母"(同一个字母连续出现两次)的字符串,则函数in返回true,否则返回false。例如,双字母("hello")返回true,其中双字母("hi there")返回false。

--我没有要求任何人为我做这项工作,但我有。我知道它正确地流动,就好像我用print("true")替换了return-true,反之亦然,它将打印那些内容。递归函数在布尔值上是否工作得不好,或者我是否遗漏了一些明显的东西?

1
2
3
4
5
6
7
8
def double_letters(astr):
    if len(astr) >= 2:
        if astr[0] == astr[1]:
            return True
        else:
            double_letters(astr[1:])
    else:
        return(False)


1
2
        else:
            return double_letters(astr[1:])

否则,你做你的呼叫,递归函数,但是你必须在其返回值的函数,和你的None时返回真。 </P >


1
double_letters(astr[1:])

有一行,通过本身,不做的多。做你的均return double_letters(astr[1:])??????? </P >