Signalling NaN's are a pain because I'd want: is_nan(snan) == True
But statistics.median([1, 2, snan], on_nan='ignore') to raise an exception. And I'd want: statistics.median([1, 2, 3, qnan], on_nan='ignore') == 2 So we're back to needing yet another function is_nonsignaling_nan(). On Sun, Dec 29, 2019, 7:25 AM Steven D'Aprano <st...@pearwood.info> wrote: > On Sat, Dec 28, 2019 at 09:35:07PM -0800, Christopher Barker wrote: > > On Sat, Dec 28, 2019 at 3:40 PM David Mertz <me...@gnosis.cx> wrote: > > > > > What about Decimal snan? > > > > > > > That version tries to call .is_nan() first, so works fine with the > Decimal > > snan. > > > > But as Nark pointed out, having an s an raise maybe the right thing to do > > anyway— it should not be used to indicate a missing value anyway. > > Merely testing whether a value is a NAN or not should not trigger the > "signalling" part of a signalling NAN. Only comparisons and mathematical > operations on sNANs should signal. > > Support for floating point sNANs is patchy and hardware dependent. > See here for more discussion: > > > https://mail.python.org/archives/list/python-...@python.org/thread/35NECLGFIVAHWTIPAYDBJOJJX3FSY233/ > > > -- > Steven > _______________________________________________ > Python-ideas mailing list -- python-ideas@python.org > To unsubscribe send an email to python-ideas-le...@python.org > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/python-ideas@python.org/message/CD7DI7NDCILFMBWV52PXZVKAIXRDL722/ > Code of Conduct: http://python.org/psf/codeofconduct/ >
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/76E6C4GZW7YF3FZWV6LXULBHGB3W6OHL/ Code of Conduct: http://python.org/psf/codeofconduct/