title: Testing floating point equality
body: <p>Is there a function to test floating point approximate equality in python?  Something like,</p>
  
  <pre><code> def approx_equal(a, b, tol):
       return abs(a - b) &lt; tol
  </code></pre>
  
  <p>My use case is similar to how Google's C++ testing library, gtest.h, defines <code>EXPECT_NEAR</code>.</p>
  
  <p>Here is an example:</p>
  
  <pre><code>def bernoulli_fraction_to_angle(fraction):
      return math.asin(sqrt(fraction))
  def bernoulli_angle_to_fraction(angle):
      return math.sin(angle) ** 2
  def test_bernoulli_conversions():
      assert(approx_equal(bernoulli_angle_to_fraction(pi / 4), 0.5, 1e-4))
      assert(approx_equal(
                bernoulli_fraction_to_angle(bernoulli_angle_to_fraction(0.1)),
                  0.1, 1e-4))
  </code></pre>