Lo slicing nel linguaggio Python
Uno degli aspetti fondamentali del linguaggio python è lo slicing, perché si trova in molti comandi.
Cos'è lo slicing? Il termine deriva dall'inglese to slice ( sminuzzare o affettare ). Consiste nel suddividere un oggetto in unità numerate secondo un ordine sequenziale. Può trattarsi sia di una lista che dei caratteri di una stringa.
Come usare lo slicing nel Python
Una stringa alfanumerica contiene il nome "Andrea Minini".
E' una stringa composta da 13 caratteri.
In base allo slicing la stringa è un insieme composto da tredici unità elementari. Ognuna ha una sua posizione.
La posizione 0 indica l'inizio della prima posizione.
A partire da questa numerazione posso estrarre qualsiasi sottostringa, indicando l'inizio e la fine.
Ad esempio, per estrarre la sottostringa "rea" tramite lo slicing, basta scrivere ( 3:6 ).
Esempio 1
Per estrapolare e visualizzare la sottostringa da una variabile scrivo il seguente script:
nome="andrea minini"
print(nome[3:6])
L'output è il seguente:
rea
Lo slicing funziona anche all'inverso.
In questo caso la posizione zero indica la fine dell'ultimo carattere della stringa.
La numerazione è negativa da destra verso sinistra.
In questo caso per estrarre la stessa sottostringa "rea" dovrei scrivere (-10:-7).
La prima posizione a sinistra indica sempre l'inizio della sottostringa.
Esempio 2
Per estrapolare e visualizzare la stringa scrivo il seguente script:
nome="andrea minini"
print(nome[-10:-7])
L'output è sempre lo stesso:
rea
In questo esempio ho utilizzato una stringa.
Potrebbe però trattarsi anche di una lista. In questo caso le posizioni indicherebbero gli elementi della lista.
Il principio alla base dello slicing è sempre lo stesso.