[Python] l'operatore [::-1] per invertire una lista/stringa

Daniele Varrazzo piro a develer.com
Lun 10 Nov 2008 15:22:46 CET


On Mon, 10 Nov 2008 11:58:18 +0100, "Giovanni Marco Dall'Olio"
<dalloliogm a gmail.com> wrote:
> Ho appena scoperto l'esistenza dell'operatore [::-1] per invertire una
> stringa:
> 
>>>> a = [1, 2, 3]
>>>> a[::-1]
> [3, 2, 1]
>>>> 'abcd'[::-1]
> 'dcba'

E' solo una forma di slicing di sequenza. Immagino avrai già usato a[5:10]
per prendere 5 elementi a partire dal 5o, giusto? La forma completa
dell'operatore è [start:stop:step]. Nella forma che conosci tu "step" è
omesso, e il default vale 1 (puoi usare 2 per prendere un carattere sì e
uno no). Se lo step è negativo, lo slice è preso alla rovescia. Se
l'inizio e la fine sono omessi, equivalgono a prendere tutto.

> mi sapreste dire dove sono documentati gli operatori come questo, in
> python?

http://www.python.org/doc/2.5.2/lib/typesseq.html

> E' una cosa di python 2.6?

No, esiste da sempre.

-- 
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com


Maggiori informazioni sulla lista Python