Python: Recursion limit
Python Basic: Exercise-80 with Solution
Current Recursion Limit
Write a Python program to get the current value of the recursion limit.
sys.getrecursionlimit(): Return the current value of the recursion limit, the maximum depth of the Python interpreter stack. This limit prevents infinite recursion from causing an overflow of the C stack and crashing Python. It can be set by setrecursionlimit().
Sample Solution:
Python Code:
import sys # Import the sys module to access system-related information
print() # Print a blank line for spacing
print("Current value of the recursion limit:") # Display a message about the recursion limit
print(sys.getrecursionlimit()) # Retrieve and print the current recursion limit
print() # Print a blank line for spacing
Sample Output:
Current value of the recursion limit: 1000
How to change the maximum recursion depth in Python?
sys.setrecursionlimit(limit): Set the maximum depth of the Python interpreter stack to limit. This limit prevents infinite recursion from causing an overflow of the C stack and crashing Python.
The highest possible limit is platform-dependent. A user may need to set the limit higher when they have a program that requires deep recursion and a platform that supports a higher limit. This should be done with care, because a too-high limit can lead to a crash.
Python Code:
import sys # Import the sys module to access system-related information
print("Call sys.getrecursionlimit() to get the current recursion limit:") # Display a message about getting the current recursion limit
recursion_limit = sys.getrecursionlimit() # Retrieve and store the current recursion limit
print(recursion_limit) # Print the current recursion limit
print("\nCall sys.setrecursionlimit(n) to change the recursion limit to n operations:") # Display a message about changing the recursion limit
sys.setrecursionlimit(1001) # Set the recursion limit to 1001 operations
new_recursion_limit = sys.getrecursionlimit() # Retrieve and store the new recursion limit
print(new_recursion_limit) # Print the new recursion limit
Sample Output:
Call sys.getrecursionlimit() to get the current recursion limit: 1000 Call sys.setrecursionlimit(n) to change the recursion limit to n operations: 1001
Python Code Editor:
Previous: Write a Python program to get the size of an object in bytes.
Next: Write a Python program to concatenate N strings.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://w3resource.com/python-exercises/python-basic-exercise-80.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics