Это может быть вполне разумным, чтобы сначала проверить идентичность, и в методах равенства вам следует искать хорошие сочетания (как для равенства, так и для неравенства), чтобы вы могли вернуться как можно скорее.
Но, с другой стороны, это также может быть совершенно лишней проверкой, если ваш тест на равенство в противном случае дешев и вы вряд ли на практике будете сравнивать объект с самим собой.
Например, если равенство между объектами можно измерить путем сравнения одного или двух целых чисел, то это должно быть быстрее, чем проверка на идентичность, поэтому менее чем за время, которое потребуется для сравнения id
s, вы получите целое ответ. И помните, что если вы проверяете идентичности и объекты не имеют одинакового id
(что, вероятно, в большинстве сценариев), то вы ничего не получаете, поскольку вам все еще нужно выполнить полную проверку.
Так что, если полная проверка на равенство недешева и возможно, что объект можно сравнить с самим собой, тогда проверка идентичности может быть хорошей идеей.
Обратите внимание, что еще одна причина, по которой проверка не выполняется по умолчанию, состоит в том, что вполне разумно (хотя и редко) сравнивать объекты с одинаковыми идентификаторами как не равные, например:
>>> s = float('nan')
>>> s == s
False