import math
a = 1.0
b = (0.3 * 3) + 0.1
# Wrong way to compare
is_equal1 = a == b
# is_equal1 is False
# Correct way: relative tolerance, 1e-09 by default
is_equal2 = math.isclose(a, b)
# is_equal2 is True
# Near zero isclose needs abs_tol
is_equal3 = math.isclose(0.0, 1E-12)
# is_equal3 is False
is_equal4 = math.isclose(0.0, 1E-12, abs_tol=1E-9)
# is_equal4 is True
print(f"{a = }")
print(f"{b = }")
print(f"{is_equal1 = }")
print(f"{is_equal2 = }")
print(f"{is_equal3 = }")
print(f"{is_equal4 = }")