Exception Handling in Python | Learn about Exception Handling in Minutes
What is Exception Handling in Python?
Exception handling in Python is a way to manage errors that may occur while your program is running. Instead of crashing when an error happens, you can catch the error and decide how to handle it, making your program more robust.
Why Use Exception Handling?
When your program encounters something unexpected (like dividing by zero or accessing a file that doesn't exist), Python raises an exception (an error). If you don't handle the exception, your program will crash. Exception handling helps manage these situations so the program can continue running or fail gracefully.
Key Keywords:
- try: Block where you write code that might cause an error.
- except: Block where you handle the error.
- finally: Block of code that always runs, whether there’s an error or not.
- else: Block that runs if no errors occur.
Example:
Here’s a simple example to demonstrate exception handling:
try:
# Code that may throw an error
number = int(input("Enter a number: "))
result = 10 / number
print(f"Result: {result}")
except ZeroDivisionError:
# Handle division by zero
print("Error: You can't divide by zero!")
except ValueError:
# Handle invalid input (like text instead of number)
print("Error: Please enter a valid number.")
finally:
# This will always run
print("Thank you for using the program.")
How It Works:
- try block: Python tries to execute the code inside this block. If there is an error, it moves to the
except
block. - except blocks: These handle specific types of errors. In this example:
ZeroDivisionError
handles division by zero errors.ValueError
handles invalid input (like entering text instead of a number).
- finally block: This block always runs, whether there’s an error or not. It’s useful for cleanup tasks like closing a file or releasing resources.
Example with else
Block:
try:
number = int(input("Enter a number: "))
result = 10 / number
except ZeroDivisionError:
print("Error: You can't divide by zero!")
except ValueError:
print("Error: Please enter a valid number.")
else:
# Runs if no exceptions occur
print(f"Result: {result}")
finally:
print("Program finished.")
Why is Exception Handling Useful?
- Prevents Crashes: Your program won't stop unexpectedly due to errors.
- Custom Error Messages: You can provide user-friendly messages instead of confusing Python errors.
- Cleaner Code: You can manage different errors in an organized way.
Exception handling helps you manage unexpected situations and ensures your program runs smoothly, even when things go wrong!
Comments
Post a Comment