From 5b68d649920dd84515950a5a02ffdac4ec15c4a8 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Sat, 12 Oct 2013 18:44:13 +0200 Subject: [PATCH] Closes #13905: mention rich-comparison methods in addition to __cmp__ when documenting how to make classes comparable and orderable. --- Doc/library/stdtypes.rst | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index cd7b683769..1e6394bdb1 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -189,11 +189,22 @@ such objects are ordered arbitrarily but consistently. The ``<``, ``<=``, ``>`` and ``>=`` operators will raise a :exc:`TypeError` exception when any operand is a complex number. -.. index:: single: __cmp__() (instance method) - -Instances of a class normally compare as non-equal unless the class defines the -:meth:`__cmp__` method. Refer to :ref:`customization`) for information on the -use of this method to effect object comparisons. +.. index:: + single: __cmp__() (instance method) + single: __eq__() (instance method) + single: __ne__() (instance method) + single: __lt__() (instance method) + single: __le__() (instance method) + single: __gt__() (instance method) + single: __ge__() (instance method) + +Non-identical instances of a class normally compare as non-equal unless the +class defines the :meth:`__eq__` method or the :meth:`__cmp__` method. + +Instances of a class cannot be ordered with respect to other instances of the +same class, or other types of object, unless the class defines either enough of +the rich comparison methods (:meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, and +:meth:`__ge__`) or the :meth:`__cmp__` method. .. impl-detail:: -- 2.50.1