Исключения в Python
Исключения включают в себя дочерние, соответственно BaseException включает в себя все исключения.
try: # Ловим исключение
a = 3 / 0; # Если поделить на 0 будет исключение
except ZeroDivisionError:
print('Исключение \'Деление на ноль\'')
except BaseException:
print('Базовое исключение')
else:
print('Выполняется если исключения не было')
finally:
print('Выполняется в любом случае')
Виды исключений
BaseException - базовое исключение, от которого берут начало все остальные.
- SystemExit - исключение, порождаемое функцией sys.exit при выходе из программы.
- KeyboardInterrupt - порождается при прерывании программы пользователем (обычно сочетанием клавиш Ctrl+C).
- GeneratorExit - порождается при вызове метода close объекта generator.
- Exception - а вот тут уже заканчиваются полностью системные исключения (которые лучше не трогать) и начинаются обыкновенные, с которыми можно работать.
- StopIteration - порождается встроенной функцией next, если в итераторе больше нет элементов.
- ArithmeticError - арифметическая ошибка.
- FloatingPointError - порождается при неудачном выполнении операции с плавающей запятой. На практике встречается нечасто.
- OverflowError - возникает, когда результат арифметической операции слишком велик для представления. Не появляется при обычной работе с целыми числами (так как python поддерживает длинные числа), но может возникать в некоторых других случаях.
- ZeroDivisionError - деление на ноль.
- AssertionError - выражение в функции assert ложно.
- AttributeError - объект не имеет данного атрибута (значения или метода).
- BufferError - операция, связанная с буфером, не может быть выполнена.
- EOFError - функция наткнулась на конец файла и не смогла прочитать то, что хотела.
- ImportError - не удалось импортирование модуля или его атрибута.
- LookupError - некорректный индекс или ключ.
- IndexError - индекс не входит в диапазон элементов.
- KeyError - несуществующий ключ (в словаре, множестве или другом объекте).
- MemoryError - недостаточно памяти.
- NameError - не найдено переменной с таким именем.
- UnboundLocalError - сделана ссылка на локальную переменную в функции, но переменная не определена ранее.
- OSError - ошибка, связанная с системой.
- BlockingIOError
- ChildProcessError - неудача при операции с дочерним процессом.
- ConnectionError - базовый класс для исключений, связанных с подключениями.
- BrokenPipeError
- ConnectionAbortedError
- ConnectionRefusedError
- ConnectionResetError
- FileExistsError - попытка создания строках.
- UnicodeEncodeError - исключение, связанное с кодированием unicode.
- UnicodeDecodeError - исключение, связанное с декодированием unicode.
- UnicodeTranslateError - исключение, связанное с переводом unicode.
- Warning - предупреждение.
2024-06-29
Понравилась страница?
Добавить в закладки
Или поделиться!
Связанные темы
Словари Исключения Файлы Функции в Python Списки Циклы Достоинства и недостатки языка Python Целые, вещественные и комплексные числа в Python ООП Вывод текста Множества Строки Синтаксис языка Python Время выполнения программы на Python Кортежи в Python Типы данных