<div dir="ltr">The problem with this is that if your "actual" is say, 5, then a large enough "estimate" will always be close.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jan 15, 2015 at 5:06 PM, Ron Adam <span dir="ltr"><<a href="mailto:ron3200@gmail.com" target="_blank">ron3200@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
<br>
On 01/15/2015 03:47 PM, Ron Adam wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
How about this?<br>
<br>
<br>
def is_close(x, y, delta=.001):<br>
     """ Check is x and y are close to each other. """<br>
     if x == y:<br>
         return True           # Can't get smaller than this.<br>
     if x == 0 or y == 0:<br>
         return False          # Nothing is close to zero.<br>
     if abs(x) < abs(y):       # Make x the larger one.<br>
         x, y = y, x<br>
     if x * y < 0:             # Signs differ.<br>
         x = x - 2.0 * y         # Move x and y same distance.<br>
         y = -y<br>
     return (x - y)/float(x) <= delta<br>
</blockquote>
<br>
<br></span>
Remove the check of one being zero, it isn't needed.<span class=""><br>
<br>
def is_close(x, y, delta=.001):<br>
     """ Check is x and y are close to each other. """<br>
     if x == y:<br>
         return True           # Can't get smaller than this.<br></span><span class="">
     if abs(x) < abs(y):       # Make x the larger one.<br>
         x, y = y, x<br>
     if x * y < 0:             # Signs differ.<br>
         x = x - 2.0 * y       # Move x and y same distance.<br>
         y = -y<br>
     return (x - y)/float(x) <= delta<br>
<br>
<br></span>
If one of them is zero, then you get a ratio of one. So a delta of 1 would mean everything is close.<span class="HOEnZb"><font color="#888888"><br>
<br>
-Ron</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
______________________________<u></u>_________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org" target="_blank">Python-ideas@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-ideas" target="_blank">https://mail.python.org/<u></u>mailman/listinfo/python-ideas</a><br>
Code of Conduct: <a href="http://python.org/psf/codeofconduct/" target="_blank">http://python.org/psf/<u></u>codeofconduct/</a><br>
<br>
-- <br>
<br>
--- You received this message because you are subscribed to a topic in the Google Groups "python-ideas" group.<br>
To unsubscribe from this topic, visit <a href="https://groups.google.com/d/topic/python-ideas/zpfXmlTOp2I/unsubscribe" target="_blank">https://groups.google.com/d/<u></u>topic/python-ideas/<u></u>zpfXmlTOp2I/unsubscribe</a>.<br>
To unsubscribe from this group and all its topics, send an email to <a href="mailto:python-ideas%2Bunsubscribe@googlegroups.com" target="_blank">python-ideas+unsubscribe@<u></u>googlegroups.com</a>.<br>
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank">https://groups.google.com/d/<u></u>optout</a>.<br>
</div></div></blockquote></div><br></div>