Roberto Lee
PreguntaBuenas, tengo una duda. Porqué en el código **def factorial (n) ** hace como si fuera un bucle y halla la respuesta sin haber puesto un while o un for. antes?

Paula Scatarelli
@ceporro mejor explicación! y la más simple, como debe ser. Muchas gracias!!!

Sebastián Andrade
Como te dijo el compañero es debido a la recursividad, la recursividad es basicamente cuando una funcion se llama a si misma

CRISTIAN BARBERO PÉREZ
Es debido a la recursividad.
Imagina que quieres calcular el factorial de 3:
Se llama a la función factorial(3) y resulta
factorial(3) = 3 * factorial(2)
Entonces para resolverlo se llama a la función factorial(2):
factorial(2) = 2 * factorial(1)
Por tanto se llama a la función factorial(1):
factorial(1) = 1
Como factorial(1) ya está resuelto, se retrocede a factorial(2) que será 2, se retrocede a factorial(3) que será 3*2