with tutorial framework español djangoproject desde con cero applications python recursion return nonetype

python - framework - tutorial django



El código recursivo devuelve None (1)

Probablemente quieras un return en la última línea:

return isIn(char, aStr)

Sin él, la función simplemente devuelve None cuando termina sin ver un return .

Esta pregunta ya tiene una respuesta aquí:

Realmente no entiendo, ¿por qué el código

def isIn(char, aStr): ms = len(aStr)/2 if aStr[ms] == char: print ''i am here now'' return True elif char>aStr[ms] and not ms == len(aStr)-1: aStr = aStr[ms+1:] elif char <aStr[ms] and not ms == 0: aStr = aStr[0:ms] else: return False isIn(char, aStr) print isIn(''a'', ''ab'')

sigue repitiendo None. imprime ''estoy aquí ahora'', pero no regresa Verdadero, como dice la siguiente línea. ¿Por qué?