diff options
author | Windson yang <wiwindson@outlook.com> | 2018-09-14 04:50:18 (GMT) |
---|---|---|
committer | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2018-09-14 04:50:18 (GMT) |
commit | 1aeba7458d2aaf8a03b5d443179d122ceb2ccece (patch) | |
tree | 9e230bf3e59fc1c0b35cac07f7306d1ac6c8c880 /Doc/library/stdtypes.rst | |
parent | 1401018da127c668a607bc63a14e5b6c3156f916 (diff) | |
download | cpython-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.rst | 18 |
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) |