math.isclose
Проверяет, что два числа близки друг к другу с заданной точностью.
Python 3.13
math.isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)Параметры
- aint | float
- Первое число.
- bint | float
- Второе число.
- rel_tolfloatнеобязательный
- Допустимая относительная разница, по умолчанию 1e-09 — примерно 9 совпадающих значащих цифр.
- abs_tolfloatнеобязательный
- Допустимая абсолютная разница, по умолчанию 0.0; нужна для сравнения с нулём.
Возвращаемое значение
True, если числа близки, иначе False.
Примеры
Сравнение дробных чисел
Python 3.13
import math
print(0.1 + 0.2 == 0.3, math.isclose(0.1 + 0.2, 0.3))False True
Сравнение с нулём через abs_tol
Python 3.13
import math
print(math.isclose(1e-10, 0), math.isclose(1e-10, 0, abs_tol=1e-9))False True
Подробности
Дробные числа хранятся приближённо, поэтому 0.1 + 0.2 == 0.3 даёт False. С нулём относительная точность не работает: любое ненулевое число далеко от нуля в относительных единицах, поэтому для такого сравнения задайте abs_tol.
