Proposed PEP: New style indexing, was Re: Bug in slice type

Kay Schluehr kay.schluehr at gmx.net
Sun Aug 21 10:29:50 CEST 2005


Bryan Olson wrote:
> Steven Bethard wrote:
>  > Well, I couldn't find where the general semantics of a negative stride
>  > index are defined, but for sequences at least[1]:
>  >
>  > "The slice of s from i to j with step k is defined as the sequence of
>  > items with index x = i + n*k such that 0 <= n < (j-i)/k."
>  >
>  > This seems to contradict list behavior though. [...]
>
> The conclusion is inescapable: Python's handling of negative
> subscripts is a wart. Indexing from the high end is too useful
> to give up, but it should be specified by the slicing/indexing
> operation, not by the value of the index expression.

It is a Python gotcha, but the identity X[-1] == X[len(X)-1] holds and
is very usefull IMO. If you want to slice to the bottom, take 0 as
bottom value. The docs have to be extended in this respect.

Kay




More information about the Python-list mailing list