[Python-ideas] Introduce collections.Reiterable
ethan at stoneleaf.us
Mon Sep 23 03:41:53 CEST 2013
On 09/22/2013 12:04 PM, Neil Girdhar wrote:
> I'm with you on this.
> If you want an Iterable and you wrote __getitem__, then it's not too much to ask that you either write a trivial __iter__:
If you want to be in full compliance, sure. But one of the nice things about Python is you aren't forced to write more
than you need. If I have objects that I want to have be equal to each other I can just write __eq__ -- I don't have to
write __lt__, __gt__, __le__, nor __ge__. And if I want to not equal to be the opposite of equal (as opposed to
something weird) I don't even need to write __ne__ any more.
> or you write __len__ and inherit from collections.Sequence.
I don't like inheriting from any of the abc's (maybe I just haven't written a large enough framework yet). And I'm not
writing __len__ unless I plan on supporting len().
> We should deprecate the sequence protocol.
No, we shouldn't.
More information about the Python-ideas