Ya hemos tratado el tema del factorial sin recursividad en este post:
Factorial de un número en Python
En esta ocasión vamos a utilizar una función recursiva.
El código se puede descargar en el siguiente enlace:
def factorial(n):
if n > 1:
n *= factorial(n - 1)
return n
factorial(5)
El factorial de 5 es:5! = 5 * 4 * 3 * 2 * 1 = 120
La función recursiva se llama a si misma hasta que se llega a la condición de parada que en este caso es cuando n vale 1 y en ese caso se retorna el valor que ha alcanzado la propia variable