summaryrefslogtreecommitdiffstats
path: root/Doc/library/stdtypes.rst
diff options
context:
space:
mode:
authorWindson yang <wiwindson@outlook.com>2018-09-14 04:50:18 (GMT)
committerMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2018-09-14 04:50:18 (GMT)
commit1aeba7458d2aaf8a03b5d443179d122ceb2ccece (patch)
tree9e230bf3e59fc1c0b35cac07f7306d1ac6c8c880 /Doc/library/stdtypes.rst
parent1401018da127c668a607bc63a14e5b6c3156f916 (diff)
downloadcpython-1aeba7458d2aaf8a03b5d443179d122ceb2ccece.zip
cpython-1aeba7458d2aaf8a03b5d443179d122ceb2ccece.tar.gz
cpython-1aeba7458d2aaf8a03b5d443179d122ceb2ccece.tar.bz2
bpo-34552: Clarify built-in types comparisons (GH-9035)
Some updates to ancient text about comparisons; fixes bp-34552.
Diffstat (limited to 'Doc/library/stdtypes.rst')
-rw-r--r--Doc/library/stdtypes.rst18
1 files changed, 8 insertions, 10 deletions
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index f7f59cd..fd59a51 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -20,10 +20,10 @@ rearrange their members in place, and don't return a specific item, never return
the collection instance itself but ``None``.
Some operations are supported by several object types; in particular,
-practically all objects can be compared, tested for truth value, and converted
-to a string (with the :func:`repr` function or the slightly different
-:func:`str` function). The latter function is implicitly used when an object is
-written by the :func:`print` function.
+practically all objects can be compared for equality, tested for truth
+value, and converted to a string (with the :func:`repr` function or the
+slightly different :func:`str` function). The latter function is implicitly
+used when an object is written by the :func:`print` function.
.. _truth:
@@ -164,12 +164,10 @@ This table summarizes the comparison operations:
pair: objects; comparing
Objects of different types, except different numeric types, never compare equal.
-Furthermore, some types (for example, function objects) support only a degenerate
-notion of comparison where any two objects of that type are unequal. The ``<``,
-``<=``, ``>`` and ``>=`` operators will raise a :exc:`TypeError` exception when
-comparing a complex number with another built-in numeric type, when the objects
-are of different types that cannot be compared, or in other cases where there is
-no defined ordering.
+The ``==`` operator is always defined but for some object types (for example,
+class objects) is equivalent to :keyword:`is`. The ``<``, ``<=``, ``>`` and ``>=``
+operators are only defined where they make sense; for example, they raise a
+:exc:`TypeError` exception when one of the arguments is a complex number.
.. index::
single: __eq__() (instance method)