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:]) |
否则,你做你的呼叫,递归函数,但是你必须在其返回值的函数,和你的
1 | double_letters(astr[1:]) |
有一行,通过本身,不做的多。做你的均