This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: Comparison operators - New rules undocumented in Python 3.0
Type: Stage:
Components: Documentation Versions: Python 3.0
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: georg.brandl Nosy List: georg.brandl, mgiuca
Priority: normal Keywords: patch

Created on 2008-09-08 06:49 by mgiuca, last changed 2022-04-11 14:56 by admin. This issue is now closed.

File name Uploaded Description Edit
expressions.patch mgiuca, 2008-09-08 06:49
Messages (2)
msg72767 - (view) Author: Matt Giuca (mgiuca) Date: 2008-09-08 06:49
I've noticed that in Python 3.0, the <, >, <= and >= operators now raise
a TypeError when comparing objects of different types, rather than
ordering them "consistently but arbitrarily". The documentation doesn't
yet reflect this behaviour.

The current documentation says:
"(This unusual definition of comparison was used to simplify the
definition of operations like sorting and the in and not in operators.
In the future, the comparison rules for objects of different types are
likely to change.)"

I assume this is the change it's warning us about.

Hence I propose this patch to reference/expressions.rst, which removes
the above quoted paragraph and describes the new TypeError-raising
behaviour. My text is as follows:

"The objects need not have the same type. If both are numbers, they are
converted to a common type. Otherwise, the == and != operators always
consider objects of different types to be unequal, while the <, >, >=
and <= operators raise a TypeError when comparing objects of different
msg72900 - (view) Author: Georg Brandl (georg.brandl) * (Python committer) Date: 2008-09-09 19:32
Thanks, fixed in r66349.
Date User Action Args
2022-04-11 14:56:38adminsetgithub: 48053
2008-09-09 19:32:18georg.brandlsetstatus: open -> closed
resolution: fixed
messages: + msg72900
2008-09-08 06:49:30mgiucacreate