Articolo originale: https://www.freecodecamp.org/news/python-substring-how-to-slice-a-string/
In Python, una stringa è una sequenza di caratteri che può contenere caratteri speciali o alfanumerici.
Un esempio di stringa è "ci vediamo venerdì alle 08:00"
ed è possibile avere accesso a delle specifiche sue porzioni comunemente dette sottostringhe.
Possiamo definire una sottostringa come una sequenza di caratteri all'interno di una stringa. Considerando l'esempio precedente, "venerdì"
, "alle"
e "vediamo"
sono esempi di sottostringhe.
Come creare una sottostringa in Python
Python offre diversi metodi per generare una sottostringa, valutare la presenza di una specifica sottostringa, ottenerne gli indici e molto altro.
È possibile estrarre una sottostringa da una stringa tramite gli indici che individuano la sua posizione, come ad esempio:
string[start:stop:step]
- start - L'indice iniziale della sottostringa.
- stop - L'indice finale della sottostringa.
- step - Un numero che specifica lo step con cui avviene l'estrazione (il valore di default è 1).
Gli indici possono essere positivi, quando la numerazione va dall'inizio della stringa verso la fine, o negativi, se procede nel senso opposto.
In quest'articolo, imparerai come eseguire varie operazioni riguardanti le sottostringhe in Python.
Come ottenere i primi n caratteri di una stringa in Python
L'esempio qui sotto mostra come estrarre i primi 5 caratteri dalla stringa:
string = "hello world"
print(string[:5])
In questo caso, viene definito l'indice di stop (5
), mentre quello di partenza è 0 di default.
L'output è 'hello'
.
Come ottenere i caratteri centrali di una stringa in Python
Il prossimo esempio mostra come estrarre dalla stessa stringa i caratteri dall'indice 3
all'indice 5
.
string = "hello world"
print(string[3:5])
L'output è 'lo'
.
Come ottenere l'ultimo carattere di una stringa in Python
Per ottenere l'ultimo carattere di una stringa è conveniente utilizzare l'indice negativo -1
, come nell'semepio qui sotto:
string = "freecodecamp"
print(string[-1])
In questo caso l'output è 'p'
.
Come ottenere gli ultimi n caratteri di una stringa in Python
Nel seguente esempio, sono stati estratti gli ultimi 4 caratteri della stringa utilizzando gli indici negativi per far partire l'operazione dalla fine della stringa:
string = "freecodecamp"
print(string[-4:])
L'output è ‘camp’
.
Come estrarre dei caratteri da una stringa con un passo specifico in Python
È possibile estrarre dei caratteri utilizzando un particolare step, diverso da quello di default (1), indicandolo dopo l'indice di partenza e di fine. Utilizzando uno step di 2:
string = "welcome to freecodecamp"
print(string[::2])
L'output è 'wloet fecdcm'
.
Come verificare se una sottostringa è presente in una stringa in Python
A volte può essere necessario cercare una specifica sottostringa all'interno di una stringa. Nell'esempio seguente, viene verificata la presenza della sottostringa "code"
in una stringa:
substring = "code"
string = "welcome to freecodecamp"
print(substring in string)
Se la stringa è presente (come in questo caso) l'output sarà True
, mentre in caso contrario sarà False
.
Un altro modo per cercare una sottostringa in una stringa in Python
Puoi utilizzare anche la funzione find()
per verificare la presenza di una sottostringa, come nel prossimo esempio:
substring = "zz"
string = "hello world"
print(string.find(substring))
Se la sottostringa è presente, il valore restituito dalla funzione sarà l'indice corrispondente con l'inizio della sottostringa, altrimenti sarà -1
se non è presente.
"zz"
non è presente in “hello world”, quindi in questo caso l'output è -1
.
Come ottenere il carattere con uno specifico indice in una stringa in Python
Puoi estrarre un carattere specifico da una stringa utilizzando il suo indice, ad esempio:
string ="hello world"
print(string[4])
L'output è 'O'
.
Come creare una lista di sottostringhe da una stringa in Python
Puoi utilizzare la funzione split()
per creare una lista di sottostringhe:
string = "welcome to freecodecamp platform"
print(string.split())
L'output sarà ['welcome', 'to', 'freecodecamp', 'platform']
Come invertire una stringa in Python utilizzando uno step negativo
Per invertire una stringa, possiamo utilizzare uno step negativo, ad esempio -1:
string = "welcome to freecodecamp"
print(string[::-1])
L'output è ‘pmacedoceerf ot emoclew’
.
Come contare quante volte una sottostringa è presente in una stringa in Python
Puoi utilizzare la funzione count()
per sapere quante volte una specifica sottostringa si ripete in una stringa:
string = "we will have a quick coding lesson this afternoon"
print(string.count('noon'))
L'output è 1
.
Ultime parole
Spero che quest'articolo ti sia stato d'aiuto e che tu abbia imparato qualcosa di nuovo sulle sottostringhe in Python.
Se ti è piaciuto quest'articolo o l'hai trovato utile, condividilo in modo che possa essere letto da altri. Al prossimo post!