Une fonction récursive en Python est une fonction qui s’appelle elle-même dans sa définition.
Cela crée une boucle, où la fonction continue à s’appeler jusqu’à ce qu’une condition d’arrêt soit atteinte.
La récursivité est souvent utilisée pour résoudre des problèmes qui peuvent être divisés en problèmes plus petits de la même nature.
Par exemple, une fonction récursive pour calculer le factoriel d’un nombre pourrait ressembler à ceci:
```
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
```
Dans cet exemple, la fonction `factorial` continue à s’appeler elle-même avec des valeurs de `n` de plus en plus petites, jusqu’à ce que `n` soit égal à zéro, auquel cas elle retourne 1.
Notez que les fonctions récursives doivent toujours avoir une condition d’arrêt pour éviter une boucle infinie.