[issue23185] add inf and nan to math module

STINNER Victor report at bugs.python.org
Fri Jan 9 09:57:16 CET 2015


STINNER Victor added the comment:

2015-01-09 8:16 GMT+01:00 Serhiy Storchaka <report at bugs.python.org>:
> May be make math.inf and math.nan special objects so that for all x (except inf and nan):

What do you mean? Implement a subtype of float and override some methods?

> x < math.inf
> x > -math.inf

It's already the case for int, float and decimal.Decimal.

> not (x < math.nan)
> not (x > math.nan)

Comparison to nan always return False.

I would be better to raise an error when nan is compared to other numbers (I mean operations like a>b, not a==b), but Python was not designed like that (nor the IEEE 754?).

>>> sorted((nan, 1, nan, 2))
[nan, 1, nan, 2]

Sorting with NaN is a common issue :-/ See for example:
https://stackoverflow.com/questions/4240050/python-sort-function-breaks-in-the-presence-of-nan

Anyway, changing NaN behaviour is out of the scope of this issue!

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue23185>
_______________________________________


More information about the Python-bugs-list mailing list