Lo slicing in Python permette di creare delle sotto - sequenze, quindi è un modo per ottenere più elementi contemporaneamente da una lista.
Abbiamo già utilizzato lo slicing nelle stringhe nel seguente tutorial: stringhe in python.
Lo slicing in Python - creare sottoliste
Facciamo subito un esempio per capire come funziona lo slicing.
anni = [2019,2018,2017,2016,2015,2014]
p = anni[2:] #parte dall'indice 2 fino alla fine della lista
q = anni[:2]
m = anni[2:4]
e = anni[3]
n = anni[-1]
print(p)
print(q)
print(m)
print(e)
print(n)
Esaminiamo l'esempio proposto.
Con anni[2:] si crea una sottolista che parte dall'indice 2 e va fino alla fine della lista. Se non si specifica il secondo elemento infatti si intende fino alla fine.
Invece con anni[:2] si indicano solo i primi due elementi della lista. Se non specifico il primo elemento si intende dall'inizio.
Dopo con anni[2:4] creiamo una sottolista che parte dall'indice 2 e arriva fino all'indice 4-1. Stamperà dunque solo 2 elementi.
Poi con anni[3] indichiamo solo l'elemento con indice 3 e cioè l'anno 2016.
Infine con anni[-1] si parte da destra e quindi si stampa solo l'anno 2014.
Dunque riepilogando avremo il seguente output:
[2017, 2016, 2015, 2014]
[2019, 2018]
[2017, 2016]
2016
2014
Attenzione se indichiamo ad esempio anni[6] si avrà il seguente errore IndexError: list index out of range, in quanto l'indice esce fuori dal range della lista.
Specificare un passo
Negli slice è possibile inoltre specificare un passo, ad esempio:
anni = [1,2,3,4,5,6,7,8,9,10]
p = anni[1:10:2]
print(p)
Si stamperanno gli elementi dall'indice 1, quindi dal numero 2, fino all'indice 9 a passi di 2. Si avrà cioè il seguente output [2, 4, 6, 8, 10].
Per ottenere un ordine inverso posso indicare semplicemente lo step di -1, come da esempio sotto:
anni = [1,2,3,4,5,6,7,8,9,10]
p = anni[::-1]
print(p)
Stamperà quindi [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]. Posso indicare anche lo step di -2 per stampare i numeri [10, 8, 6, 4, 2].

50 Algoritmi per imparare Python
Una guida step by step per imparare Python con esercizi svolti.
Questi sono solo alcuni esempi con l'uso dello slicing in Python, più avanti realizzeremo altre applicazioni.
Alcuni link utili
Indice tutorial sul linguaggio Python
1 – Introduzione al linguaggio Python
2 – Le variabili
3 – Operatori aritmetici e di assegnazione
4 – Stringhe
5 – Casting
6 – Input e print
8 – Errori in Python
9 – Script Python
10 – Scambio di variabili
11 – Modulo math