Определяет ли Python значение «NaN > 0»? В моем интерпретаторе Python я получаю:
>>> float('nan') > 0
False
а это гарантировано?
Если я правильно понимаю, стандарт IEEE 754 присваивает значение False любому сравнению, включающему NaN. Однако я не могу найти в документации Python ничего, что указывало бы на соблюдение этого стандарта. Я даже понимаю, что 1/0
должно давать бесконечность в соответствии с IEEE 754, но Python вызывает исключение (ZeroDivisionError
), поэтому Python не полностью соответствует IEEE 754.
Итак, результат float('nan') > 0
полностью определен в Python? Мне нужно знать, одинаково ли это на всех платформах и со всеми версиями Python (включая старые).