[Python-Dev] return type of __complex__
Terry Reedy
tjreedy at udel.edu
Sun Oct 21 17:34:05 CEST 2012
On 10/21/2012 5:45 AM, Mark Dickinson wrote:
> On Sun, Oct 21, 2012 at 6:26 AM, Greg Ewing <greg.ewing at canterbury.ac.nz> wrote:
>> I think I've changed my mind on this, since it was pointed
>> out that if you're going to return a float instead of a
>> complex, you should really be implementing __float__, not
>> __complex__.
>
> Yes, I'm wavering on this, too. I'm reasonably convinced that the
> complex constructor is wrong to accept a float return from
> __complex__. But it's not clear to me whether it's better to break
> backwards compatibility by fixing that in 3.4, or to accept the
> mistake and make cmath behave analogously.
I think we should fix it. A float return appears very rare, as well as
wrong.
--
Terry Jan Reedy
More information about the Python-Dev
mailing list