Обробка виключень

Основи використання try, except

Простий приклад

try: number = int(input("Enter a number: ")) print(f"You entered: {number}") except ValueError: print("Invalid input! Please enter a valid number.")

Застосування:

Обробляє помилку, якщо користувач вводить нечислове значення.

Приклад виведення:

Enter a number: abc
Invalid input! Please enter a valid number.

Використання finally

try: file = open("example.txt", "r") content = file.read() except FileNotFoundError: print("File not found!") finally: print("Execution complete.")

Застосування:

Блок finally виконується незалежно від того, чи виникла помилка.

Приклад виведення:

File not found!
Execution complete.

Виключення власного типу (raise)

def check_positive(number): if number < 0: raise ValueError("The number must be positive!") return number try: print(check_positive(-5)) except ValueError as e: print(e)

Застосування:

Створює власне виключення для обробки специфічної ситуації.

Приклад виведення:

The number must be positive!

Обробка кількох типів виключень

try: num1 = int(input("Enter the first number: ")) num2 = int(input("Enter the second number: ")) result = num1 / num2 print(f"Result: {result}") except ValueError: print("Invalid input! Please enter a number.") except ZeroDivisionError: print("Cannot divide by zero!")

Застосування:

Обробляє кілька типів помилок у різних блоках except.

Приклад виведення:

Enter the first number: 10
Enter the second number: 0
Cannot divide by zero!

Використання else разом із try

try: num = int(input("Enter a number: ")) except ValueError: print("Invalid input!") else: print(f"You entered: {num}")

Застосування:

Блок else виконується, якщо в try не виникає виключення.

Приклад виведення:

Enter a number: 5
You entered: 5

Вкладені виключення (try всередині try)

try: num = int(input("Enter a number: ")) try: result = 10 / num print(f"Result: {result}") except ZeroDivisionError: print("Cannot divide by zero!") except ValueError: print("Invalid input!")

Застосування:

Використовує вкладені блоки try для обробки різних типів виключень.

Приклад виведення:

Enter a number: 0
Cannot divide by zero!