Time for action – asserting almost equal
Imagine that you have two numbers that are almost equal. Let's use the assert_almost_equal()
function to check whether they are equal:
- Call the function with low precision (up to 7 decimal places):
print("Decimal 6", np.testing.assert_almost_equal(0.123456789, 0.123456780, decimal=7))
Note that no exception is raised, as you can see in the following result:
Decimal 6 None
- Call the function with higher precision (up to 8 decimal places):
print("Decimal 7", np.testing.assert_almost_equal(0.123456789, 0.123456780, decimal=8))
The result is as follows:
Decimal 7 Traceback (most recent call last): … raise AssertionError(msg) AssertionError: Arrays are not almost equal ACTUAL: 0.123456789 DESIRED: 0.12345678
What just happened?
We used the assert_almost_equal()
function from the NumPy testing
package to check whether 0.123456789
and 0.123456780
are equal for different decimal precisions.