Справочник по функциям Python

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.

Смотрите также

Где изучить