A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://mail.python.org/pipermail/python-list/2005-September/351903.html below:

Possible improvement to slice opperations.

Possible improvement to slice opperations. Possible improvement to slice opperations.Ron Adam rrr at ronadam.com
Mon Sep 5 12:23:46 EDT 2005
Szabolcs Nagy wrote:

> with the current syntax L[i:i+1] returns [L[i]], with nxlist it returns
> L[i+1] if i<0.
> 
> L=range(10)
> L[1:2]==[L[1]]==[1]
> L[-2:-1]==[L[-2]]==[8]
> 
> L=nxlist(range(10))
> L[1:2]==[L[1]]==[1]
> L[-2:-1]==[L[-1]]==[9] # not [L[-2]]
> 
> IMHO in this case current list slicing is more consistent.


Your second case should be:
    L[-3:-2]==[L[-2]]==[8]

The single index is also the right side index of the range selection 
ending in the same position just as with positive number the single 
index is the left side index of a range starting in the same position.

So for positive indexing...
    L[n1:n2]==[L[n1]]==first value of selection from left

and negative indexing...
    L[n1:n2]==[L[n2]]==first value of selection from right


Currently for negative values...

    L[n1:n2]==[L[n2-1]]==first value of selection from right


The symmetry is easier to see when using the '~' values.

LL=list(range(10))
Lx=nxlist(range(10))

LL[ 1: 2]==[LL[ 1]]==[1]
Lx[~2:~1]==[Lx[~1]]==[8]


Cheers,
Ron


More information about the Python-list mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4