Исключения позволяют обрабатывать ошибки и другие исключительные ситуации, которые могут возникнуть во время выполнения программы. Правильная обработка исключений делает ваш код более надежным и устойчивым к сбоям.
Исключение — это событие, которое возникает во время выполнения программы и нарушает ее нормальный поток. Например, попытка деления на ноль или обращение к несуществующему элементу списка может вызвать исключение.
Для обработки исключений в Python используется конструкция try...except. Код, который может вызвать исключение, помещается в блок try, а обработка исключения — в блок except:
try:
result = 10 / 0
except ZeroDivisionError:
print("Ошибка: Деление на ноль!")
В этом примере, если произойдет ошибка деления на ноль, программа не завершится аварийно, а выведет сообщение об ошибке.
Вы можете обрабатывать несколько типов исключений, указав их через запятую:
try:
value = int(input("Введите число: "))
except (ValueError, ZeroDivisionError) as e:
print(f"Ошибка: {e}")
В этом примере обрабатываются как ошибки преобразования строки в число, так и деления на ноль.
finallyБлок finally выполняется всегда, независимо от того, произошло исключение или нет. Это полезно для освобождения ресурсов:
try:
file = open("file.txt", "r")
# Чтение файла
except FileNotFoundError:
print("Файл не найден.")
finally:
file.close() # Закрытие файла, если он был открыт
Вы можете создавать собственные исключения, наследуя класс Exception:
class MyCustomError(Exception):
pass
try:
raise MyCustomError("Это пользовательская ошибка!")
except MyCustomError as e:
print(e)
Обработка исключений — важный аспект программирования на Python. Она позволяет вашему коду оставаться устойчивым к ошибкам и обеспечивает более удобный интерфейс для пользователей. Понимание работы с исключениями поможет вам создавать более надежные и безопасные приложения.