Cuándo no usarla
Python · Unidad 11: Recursión
- Plan completo
- Python
- 9 ejercicios
Si una función nunca llega a su caso base, se llama sin fin. Python no espera para siempre: con unas mil llamadas abiertas se detiene con RecursionError.
def baja(n):
return baja(n - 1)
try:
baja(5)
except RecursionError:
print("Demasiadas llamadas")Imprime
Demasiadas llamadas
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Predice la salida
¿Qué imprime este código?
2. Opción múltiple
¿Qué quiere decir un
RecursionError?3. Encuentra el bug
Este programa debería imprimir 81, que es 3 elevado a la 4. ¿Qué línea tiene el error?
4. Encuentra el caso que falla
suma_hasta(n)debería regresar 1 + 2 + ... + n, o 0 sines 0 o negativo. ¿Con qué llamada falla?5. Opción múltiple
Tienes que sumar las 10 000 ventas del año, guardadas en una lista. ¿Qué conviene?
6. Predice la salida
Este es
factescrito con un ciclo. ¿Qué imprime?7. Completa el código
Esta es
cuentacon un ciclo. Completa para que imprima 3, 2, 1 y ¡Despegue!8. Ordena las líneas
Ordena la versión con ciclo de
invertir.9. Predice la salida
Aquí la función se llama a sí misma con cada lista de adentro. ¿Qué imprime?
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.