Articolo originale: How to Substring a String in Python
Python offre molti modi per ottenere una sottostringa di una stringa. È spesso chiamato "fare a fette" (slice).
Segue il seguente schema:
stringa[inizio:fine:n]
Dove,
inizio
: è l'indice iniziale della sotto stringa. Il carattere a questo indice è incluso nella sottostringa. Se inizio non è incluso, viene considerato 0.
fine
: è l'indice a cui deve terminare la sottostringa. Il carattere a questo indice NON è incluso nella sottostringa. Se fine non è scritto o il valore specificato eccede la lunghezza della stringa, viene considerato pari alla lunghezza della stringa come default.
n
: indica quali caratteri includere nella sottostringa: a partire dal carattere all'indice iniziale, viene incluso solo ogni n-esimo carattere. Il valore di default è 1. Se il valore n è omesso, si considera uguale a 1.
Usi standard
stringa[inizio:fine]
: restituisce tutti i caratteri dall'indice inizio all'indice fine-1
stringa[:fine]
: restituisce tutti i caratteri dall'inizio della stringa all'indice fine-1
stringa[inizio:]
: restituisce tutti i caratteri dall'indice inizio alla fine della stringa
stringa[inizio:fine:n]
: restituisce i caratteri da inizio a fine-1 includendo solo ogni n-esimo carattere
Esempi
- Ottenere i primi 5 caratteri di una stringa
string = "freeCodeCamp"
print(string[0:5])
Output:
> freeC
Nota: print(string[:5])
restituisce lo stesso risultato di print(string[0:5])
2. Ottienere una sottostringa di lunghezza 4 a partire dal terzo carattere della stringa
string = "freeCodeCamp"
print(string[2:6])
Output:
> eeCo
3. Ottenere l'ultimo carattere della stringa
string = "freeCodeCamp"
print(string[-1])
Output:
> p
Nota che l'indice di inizio o fine potrebbero essere un numero negativo. Un indice negativo significa che si inizia a contare dalla fine della stringa invece che dall'inizio (cioè, da destra a sinistra).
L'indice -1 rappresenta l'ultimo carattere della stringa, -2 rappresenta il penultimo carattere della stringa e così via...
4. Ottenere gli ultimi 5 caratteri di una stringa
string = "freeCodeCamp"
print(string[-5:])
Output:
> eCamp
5. Ottenere una sottostringa che contiene tutti i caratteri tranne gli ultimi 4 e il primo carattere
string = "freeCodeCamp"
print(string[1:-4])
Output:
> reeCode
6. Ottenere ogni secondo carattere di una stringa
string = "freeCodeCamp"
print(string[::2])
Output:
> feCdCm