Een recursieve functie in Python is een functie die zichzelf aanroept in zijn eigen definitie. Het basisidee achter recursie is het oplossen van complexe problemen door ze te verdelen in kleinschaligere versies van hetzelfde probleem.
Bijvoorbeeld, het berekenen van de faculteit van een getal is een klassieke toepassing van recursie:
```
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
```
In de bovenstaande code roept de functie `factorial` zichzelf aan met een ander argument totdat het een basisgeval bereikt (n = 0), waarvoor het resultaat bekend is (1). Elke recursieve functie moet een dergelijk basisgeval bevatten om een oneindige recursie te voorkomen.