[Python-checkins] bpo-47031: Improve documentation for `math.nan` (GH-32170)
JelleZijlstra
webhook-mailer at python.org
Sat Apr 2 15:58:08 EDT 2022
https://github.com/python/cpython/commit/182e93c3f57b0c72e765c9896066d32e461c0865
commit: 182e93c3f57b0c72e765c9896066d32e461c0865
branch: main
author: Charlie Zhao <zhaoyu_hit at qq.com>
committer: JelleZijlstra <jelle.zijlstra at gmail.com>
date: 2022-04-02T12:58:03-07:00
summary:
bpo-47031: Improve documentation for `math.nan` (GH-32170)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra at gmail.com>
files:
M Doc/library/math.rst
diff --git a/Doc/library/math.rst b/Doc/library/math.rst
index bcbcdef51d3fc..c0f9614231912 100644
--- a/Doc/library/math.rst
+++ b/Doc/library/math.rst
@@ -646,8 +646,23 @@ Constants
.. data:: nan
- A floating-point "not a number" (NaN) value. Equivalent to the output of
- ``float('nan')``.
+ A floating-point "not a number" (NaN) value. Equivalent to the output of
+ ``float('nan')``. Due to the requirements of the `IEEE-754 standard
+ <https://en.wikipedia.org/wiki/IEEE_754>`_, ``math.nan`` and ``float('nan')`` are
+ not considered to equal to any other numeric value, including themselves. To check
+ whether a number is a NaN, use the :func:`isnan` function to test
+ for NaNs instead of ``is`` or ``==``.
+ Example::
+
+ >>> import math
+ >>> math.nan == math.nan
+ False
+ >>> float('nan') == float('nan')
+ False
+ >>> math.isnan(math.nan)
+ True
+ >>> math.isnan(float('nan'))
+ True
.. versionchanged:: 3.11
It is now always available.
More information about the Python-checkins
mailing list