Binary Decimals in Python

Shashwat Anand anand.shashwat at gmail.com
Tue Mar 30 11:43:39 EDT 2010


The conversion is not supported for decimal integers AFAIK, however
'0b123.456' is always valid. I guess you can always get a decimal number
convertor onto Python-recipes



On Tue, Mar 30, 2010 at 9:05 PM, Grant Olson <kgo at grant-olson.net> wrote:

> On 3/30/2010 11:13 AM, aditya wrote:
> > To get the decimal representation of a binary number, I can just do
> > this:
> >
> > int('11',2) # returns 3
> >
> > But decimal binary numbers throw a ValueError:
> >
> > int('1.1',2) # should return 1.5, throws error instead.
> >
> > Is this by design? It seems to me that this is not the correct
> > behavior.
> >
>
> Well technically that would be a 'radix point', not a decimal point.
>
> But I think the problem is that computers don't store fractional values
> that way internally.  They either use floating or fixed point math.  You
> would never look at raw binary data on a computer and see something like
> '1010.1010', and no one would write it that way, and no language (that I
> know of) would accept that as a valid value if you did something like "x
> = 0b1010.1010"
>
> So in that sense, it might not be an intentional oversight, but it's not
> a very practical or useful feature.
> --
> http://mail.python.org/mailman/listinfo/python-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20100330/6021c919/attachment-0001.html>


More information about the Python-list mailing list