On Mar 11, 9:31 am, "Mark Dickinson" <[EMAIL PROTECTED]> wrote: > I get the following behaviour on Python 2.5 (OS X 10.4.8 on PowerPC, > in case it's relevant.) > > >>> x, y = 0.0, -0.0 > >>> x, y > (0.0, 0.0) > >>> x, y = -0.0, 0.0 > >>> x, y > > (-0.0, -0.0) > > I would have expected y to be -0.0 in the first case, and 0.0 in the > second. Should the above be considered a bug, or is Python not > expected to honour signs of zeros? I'm working in a situation > involving complex arithmetic where branch cuts, and hence signed > zeros, are important, and it would be handy if the above code could be > relied upon to do the right thing.
IIRC, float.__repr__ just does whatever libc does. Have you tried using printf("%g, %g", 0.0, -0.0) in a C program? -- http://mail.python.org/mailman/listinfo/python-list