On Fri, Mar 19, 2021 at 3:18 PM Cameron Simpson <c...@cskk.id.au> wrote:
>
> I whinged:
> >> On Fri, Mar 19, 2021 at 10:46 AM Cameron Simpson <c...@cskk.id.au> wrote:
> >> > I know that range(start,end,stride) will produce what I'd want from
> >> > iter(slice(start,end,stride)), but wouldn't it be reasonable for a slice
> >> > itself to be iterable? [...]
>
> >On Thu, Mar 18, 2021 at 6:09 PM Chris Angelico <ros...@gmail.com>
> >wrote:
> >> What if the start is positive and the end is negative? What values should
> >> i get?
>
> On 18Mar2021 19:15, Caleb Donovick <donov...@cs.stanford.edu> wrote:
> >Or perhaps more problematic what happens if only stride is specified?
>
> I'd be happy if the behaviour were the same as range(), yea even to
> being a concise way to spell range(slice.start,slice.end,slide.stride);
> who wants to say that if iter(slice) means the same thing?
>
> For only stride, ValueError. For positive stride and start > end, empty
> iteration.
>

Have you considered range(*slice.indices(len)) ? You need to provide a
length in order for negative or omitted endpoints to make sense, but
otherwise it's the same idea.

But it's difficult to do that within iteration protocol, as there's no
way to provide that all-important length.

ChrisA
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/64CGSN23LBRZETQKS6GF35VCSVROE6WM/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to