RecursionError: maximum recursion depth exceeded
This error matches known, documented patterns with reliable solutions.
Quick Fix (Most Common Solution)
- Add proper base case
- Convert to iterative solution
Seeing "RecursionError: maximum recursion depth exceeded"? This error can be frustrating, but it's usually fixable. It typically affects your development workflow or system. Below you'll find clear, step-by-step solutions to resolve this issue.
What This Error Means
Your recursive function called itself too many times without a base case.
Frequently documented in developer and vendor support forums.
Not affiliated with browser, OS, or device manufacturers.
New here? Learn why exact error messages matter →
Common Causes
- Missing or incorrect base case
- Infinite recursion
- Very deep valid recursion
How to Fix
- Add proper base case
- Convert to iterative solution
- Increase limit with sys.setrecursionlimit()
Last reviewed: June 2026 How we review solutions
Didn't fix it? Get a personalised solution
OS-Specific Behavior
RECURSIONERROR on Windows: Path, Shell, and Script Differences
RECURSIONERROR on Windows because of path separator differences, case sensitivity, shell availability, and how Windows handles scripts.
The most impactful differences: Windows uses backslash (\) as the path separator — use pathlib.Path or os.path.join() rather than string concatenation. Windows is case-insensitive for paths, so import MyModule and import mymodule both work on Windows but only one works on Linux. os.system() or subprocess commands that call bash, grep, sed, or awk fail on Windows unless run inside WSL2 or Git Bash. Python scripts without a shebang line need python script.py explicitly — not ./script.py. For PowerShell users, the activation script for venv is .venv\Scripts\Activate.ps1, but PowerShell's execution policy may block it — run Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser once to allow signed local scripts.Optional follow-up
Some users ask whether saving fixes for recurring errors would be useful when the same issue appears again.
Was this explanation helpful?
Frequently Asked Questions
What is the default recursion limit?
Usually 1000 in Python. Check with sys.getrecursionlimit().
Is increasing limit safe?
Can cause stack overflow. Better to use iteration.
Related Resources
Also Known As
- Python exception
- Python traceback
- Python runtime error
- Python crash
Common Search Variations
- "python error fix"
- "python script not working"
- "python traceback what does it mean"
- "how to fix python exception"
- "python crash on startup"
- "python import error solution"
Related Errors
Still Stuck?
Paste a different error message or upload a screenshot to get help instantly.