On 12/30/2016 04:31 PM, j...@math.brown.edu wrote:
On Fri, Dec 30, 2016 at 7:20 PM, Ethan Furman wrote:
If you are relying on an identity check for equality then no two
FrozenOrderedCollection instances can be equal. Was that your
intention? It it was, then just hash the instance's id() and
you're done.
No, I was talking about the identity check done by a set or dict
when doing a lookup to check if the object in a hash bucket is
identical to the object being looked up. In that case, there is
no need for the set or dict to even call __eq__. Right?
No. It is possible to have two keys be equal but different -- an easy example
is 1 and 1.0; they both hash the same, equal the same, but are not identical.
dict has to check equality when two different objects hash the same but have
non-matching identities.
--
~Ethan~
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/