<br><br><div class="gmail_quote">On Mon, Oct 12, 2009 at 4:06 PM, Anand Balachandran Pillai <span dir="ltr">&lt;<a href="mailto:abpillai@gmail.com">abpillai@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br><div class="gmail_quote"><div><div></div><div class="h5">On Mon, Oct 12, 2009 at 4:05 PM, Anand Balachandran Pillai <span dir="ltr">&lt;<a href="mailto:abpillai@gmail.com" target="_blank">abpillai@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br><div class="gmail_quote"><div><div></div><div>On Mon, Oct 12, 2009 at 4:02 PM, Anand Balachandran Pillai <span dir="ltr">&lt;<a href="mailto:abpillai@gmail.com" target="_blank">abpillai@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br><div class="gmail_quote"><div><div></div><div>On Mon, Oct 12, 2009 at 3:47 PM, Anand Chitipothu <span dir="ltr">&lt;<a href="mailto:anandology@gmail.com" target="_blank">anandology@gmail.com</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>On Mon, Oct 12, 2009 at 2:42 PM, Baiju Muthukadan &lt;<a href="mailto:baiju@muthukadan.net" target="_blank">baiju@muthukadan.net</a>&gt; wrote:<br>
</div><div>&gt; <a href="http://bitcheese.net/wiki/nopython" target="_blank">http://bitcheese.net/wiki/nopython</a><br>
&gt;<br>
&gt; Don&#39;t start a flame war now, please ;)<br>
<br>
</div>2.3 - 3.4 and 2/3.0 in Python, Ruby and Haskell interpreters.<br>
<br>
$ python3.0<br>
Python 3.0.1 (r301:69597, Feb 14 2009, 19:03:52)<br>
[GCC 4.0.1 (Apple Inc. build 5490)] on darwin<br>
Type &quot;help&quot;, &quot;copyright&quot;, &quot;credits&quot; or &quot;license&quot; for more information.<br>
&gt;&gt;&gt; 2.3 - 3.4<br>
-1.1000000000000001<br>
&gt;&gt;&gt; 2/3.0<br>
0.66666666666666663<br>
<br>
$ irb<br>
&gt;&gt; 2.3 - 3.4<br>
=&gt; -1.1<br>
&gt;&gt; 2/3.0<br>
=&gt; 0.666666666666667<br>
&gt;&gt; ^D<br>
<br>
$ ghci<br>
GHCi, version 6.8.2: <a href="http://www.haskell.org/ghc/" target="_blank">http://www.haskell.org/ghc/</a>  :? for help<br>
Loading package base ... linking ... done.<br>
Prelude&gt; 2.3 - 3.4<br>
-1.1<br>
Prelude&gt; 2/3.0<br>
0.6666666666666666<br>
Prelude&gt; Leaving GHCi.<br>
<br>
It looks like number of decimal digits printed are 17 in Python, 16 in<br>
Haskell and 15 in Ruby.<br>
<br>
Is there any way to change that behavior in Python?<br></blockquote></div></div><div><br> Not in the interpreter AFAIK. In code, use Decimal type.<br><br>import decimal<br> &gt;&gt;&gt; x=decimal.Decimal(&#39;2.3&#39;)<br>


&gt;&gt;&gt; y=decimal.Decimal(&#39;3.4&#39;)<br>
&gt;&gt;&gt; x-y<br>Decimal(&quot;-1.1&quot;)<br><br>I am not however a fan of the decimal module since it uses strings as the <br>base type.<br></div></div></blockquote></div></div><div><br> You do end up with quirks like the following however.<div>

<br>
  &gt;&gt;&gt; x=decimal.Decimal(&#39;2.3&#39;)<br>&gt;&gt;&gt; y=decimal.Decimal(&#39;3.4&#39;)<br></div>&gt;&gt;&gt; z=x-y<br>&gt;&gt;&gt; z<br>Decimal(&quot;-1.1&quot;)<br>&gt;&gt;&gt; str(z)<br>&#39;-1.1&#39;<br>&gt;&gt;&gt; z&gt;(2.2-3.4)<br>


True<br><br></div></div></blockquote></div></div><div> Oops, I meant,<br><br>&gt;&gt;&gt; z&gt;(2.3-3.4)<br>True<br><br></div></div></blockquote><div><br> Hmmm... apparently comparison with floats are not implemented<br>
 for this type, so the above is not surprising..<br><br>Example.<br><br># This is clearly false<br> &gt;&gt;&gt; z&gt;-1.0<br>True<br><br>But,<br><br># That is better!<br>&gt;&gt;&gt; z&gt;decimal.Decimal(&quot;-1.0&quot;)<br>
False<br><br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="gmail_quote"><div> </div></div></blockquote></div><br clear="all">
<br>-- <br>--Anand<br><br><br><br>