Какие методы необходимо переопределить / реализовать при создании пользовательских классов, сортируемых и / или хэшируемых в python?
На что нужно обращать внимание?
Я набираю dir({})
в моем интерпретаторе, чтобы получить список методов для встроенных диктов. Из них я предполагаю, что мне нужно реализовать некоторое подмножество
['__cmp__', '__eq__', '__ge__', '__gt__', '__hash__', '__le__', '__lt__', '__ne__']
Есть ли разница в том, какие методы должны быть реализованы для Python3, а не для Python2?