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:
> freeCNota: 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:
> eeCo3. Ottenere l'ultimo carattere della stringa
string = "freeCodeCamp"
print(string[-1])Output:
> pNota 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:
> eCamp5. Ottenere una sottostringa che contiene tutti i caratteri tranne gli ultimi 4 e il primo carattere
string = "freeCodeCamp"
print(string[1:-4])Output:
> reeCode6. Ottenere ogni secondo carattere di una stringa
string = "freeCodeCamp"
print(string[::2])Output:
> feCdCm