Documentation is a very good idea.

Maybe, even raise an error when comparing values.

Best,
Sven

On 20.01.2016 12:13, Alexandre Figura wrote:
If we put technical considerations aside, maybe we should just ask to ourselves what behavior do we expect when doing equality tests between ordered dictionaries. As a reminder:

>>> xy = OrderedDict([('x', None), ('y', None)])
>>> yx = OrderedDict([('y', None), ('x', None)])
>>> xy == yx
False
>>> xy.items() == yx.items()
True
>>> xy.keys() == yx.keys()
True
>>> xy.values() == yx.values()
False

So, it appears that:
1. equality tests between odict_values use objects identity and not equality,
2. equality tests between odict_keys do not respect order.

If it is not technically possible to change the current implementation, maybe all we can do is just add a warning about current behavior in the documentation?

On Mon, Jan 11, 2016 at 4:17 AM, Guido van Rossum <guido@python.org> wrote:
Seems like we dropped the ball... Is there any action item here?

--
--Guido van Rossum (python.org/~guido)

_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/



_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/