I have two numbers –

3.125000 Mbytes and 2.954880 Mbytes.

I want to compare them and it should return True since they are almost 3Mbytes. How can I do so in Python3.

I tried doing `math.isclose(3.125000,2.954880, abs_tol=0.1)`

.

However, this returns `False`

. I really don’t understand how to put tolerance here.

```
math.isclose(3.125000,2.954880, abs_tol=0.1).
```

https://docs.python.org/3/library/math.html

```
math.isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
```

I am using Python 3.5.2.

The expected result is `True`

.

The actual result is `False`

.

The function `math.isclose`

is really meant for dealing with floating-point imprecisions. You can use it for this, but you need to tune it appropriately: the numbers in your example are more than `0.1`

apart.

If you’re not worried about floating-point imprecisions, the better way to compare them is the obvious one:

```
def equivalent(a, b):
return abs(a-b) < 0.1
```

Your absolute tolerance is set to `0.1`

, so the difference would have to be less than `0.1`

to consider them equal; `3.125000 - 2.954880`

is (rounded) `0.17012`

, which is too big.

If you want them to be considered `close`

, increase your tolerance a bit, e.g.:

```
math.isclose(3.125000, 2.954880, abs_tol=0.2)
```

which returns `True`

as you expect.