все Python 3Исключенияисключение
FloatingPointError
встроенные исключения
Ошибка операции с плавающей точкой. В CPython по умолчанию не возникает (нужна спец. настройка), но входит в иерархию.
Синтаксис
raise FloatingPointError
В современном CPython это исключение практически мёртвое: модуль fpectl, который его включал, удалён в 3.7, и обычная арифметика его не порождает. Реальные беды с плавающей точкой приходят под другими именами — деление на ноль даёт ZeroDivisionError, слишком большой результат OverflowError, math.sqrt(-1) — ValueError, а 0.0/0.0 через numpy или float('nan') вообще молча даёт nan. Так что except FloatingPointError в учебном коде просто никогда не сработает; проверяйте результат через math.isnan() и math.isinf().
Примеры
try:
raise FloatingPointError
except FloatingPointError as e:
print(type(e).__name__) # → FloatingPointError
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности