Le stringhe in Python sono uno dei tipi di dati più im­por­tan­ti del lin­guag­gio. Vengono scritte tra vir­go­let­te e ri­pro­dot­te tramite la funzione print. Non possono essere mo­di­fi­ca­te in seguito ed è possibile can­cel­lar­le solo nel loro insieme.

Web Hosting
Diventa il n°1 della rete con il provider di hosting n°1 in Europa
  • Di­spo­ni­bi­li­tà garantita al 99,99%
  • Dominio, SSL ed e-mail inclusi
  • As­si­sten­za 24/7 in lingua italiana

Cos’è una stringa in Python?

In breve, una stringa in Python è co­sti­tui­ta dalla sequenza di vari caratteri in­di­vi­dua­li. Tali stringhe esistono nella maggior parte dei linguaggi di pro­gram­ma­zio­ne web; sono tra i tipi di dati pro­ba­bil­men­te più uti­liz­za­ti in generale. Sia che vi troviate in un tutorial su Python, in un ciclo if else in Python, in un ciclo while in Python, in un ciclo for in Python, nelle liste in Python o stiate imparando a usare gli operatori di Python, è molto probabile che avrete bisogno di costruire e usare delle stringhe. Vale quindi la pena di esaminare più da vicino la loro struttura, funzione e il loro uso.

Struttura di una stringa in Python

Una stringa in Python viene scritta tra doppi o singoli apici. Non vi è alcuna dif­fe­ren­za tra le diverse notazioni. Una semplice stringa in Python si presenta così: "esempio" o 'esempio'. Per vi­sua­liz­za­re una stringa in Python, uti­liz­za­te la funzione print. Il codice appare quindi così:

print("esempio")
print('esempio')

Tutti i caratteri all’interno delle vir­go­let­te fanno parte di questa par­ti­co­la­re stringa in Python.

Assegnare le variabili

Potete assegnare una variabile a una stringa in Python. So­prat­tut­to con le stringhe più lunghe, questo può non solo far ri­spar­mia­re tempo, ma anche mantenere il codice chiaro ed evitare alcuni problemi con Python. Di seguito un esempio:

text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
print(text)

Stringhe in Python su più righe

Se de­si­de­ra­te mappare e assegnare una stringa in Python su più righe, potete usare tre apici singoli o doppi. Anche le in­ter­ru­zio­ni di riga vengono prese in con­si­de­ra­zio­ne nel risultato. Di seguito un esempio:

text = """Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo.
Prosegue in una nuova riga,
viene ampliato con una terza e quarta riga
e infine termina con un punto."""
print(text)

Il risultato cor­ri­spon­den­te si presenta come segue:

Questo esempio di testo è molto lungo e quindi porta a un codice notevolmente più lungo.
Prosegue in una nuova riga,
viene ampliato con una terza e quarta riga
e infine termina con un punto.

Ri­pro­dur­re i singoli caratteri della stringa in Python

Per accedere a un elemento specifico di una stringa in Python, uti­liz­za­te le parentesi quadre. In Python, un elemento è ogni singolo carattere all’interno delle vir­go­let­te. Quindi, per se­le­zio­na­re un elemento par­ti­co­la­re, basta contare la sua posizione e dargli un nome. Tenete presente, tuttavia, che in Python il conteggio inizia da 0. Di seguito un esempio del codice cor­ri­spon­den­te:

text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
print(text[3])

In questo caso, il programma re­sti­tui­rà la quarta lettera (0, 1, 2, 3) della stringa in Python. Questa sarebbe la “s” di “Questo”.

Ri­pro­dur­re le stringhe in Python con un ciclo for

Potete anche leggere le stringhe in Python con un ciclo for. In questo caso, una stringa viene uti­liz­za­ta come un array in Python, quindi potete compitare qualsiasi parola, ad esempio, con un ciclo ap­pro­pria­to. Questo è il codice:

for lettera in "margherita":
print(lettera)

Il risultato sarà il seguente:

m
a
r
g
h
e
r
i
t
a

De­ter­mi­na­re la lunghezza di una stringa in Python

Per de­ter­mi­na­re la lunghezza di una stringa in Python, uti­liz­za­te la funzione len, par­ti­co­lar­men­te utile per sezioni di codice molto lunghe. Nel nostro testo di esempio, il codice si presenta come segue:

text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
print(len(text))

In questo caso il risultato sarebbe “88” per tutti i caratteri, compresi gli spazi e i segni di pun­teg­gia­tu­ra.

Con­trol­la­re le stringhe in Python

Per ve­ri­fi­ca­re se de­ter­mi­na­te lettere o termini sono contenuti in una stringa in Python, uti­liz­za­te “in”. Questo operatore verifica se il termine cercato è presente e risponde con true (vero) o false (falso). Si presenta così:

text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
print("quindi" in text)

In questo caso il risultato ottenuto sarebbe un semplice “true”.

Con una query if

In al­ter­na­ti­va, uti­liz­za­te una query if per con­fer­ma­re l’uso di un termine ricercato. A tal fine, usate il seguente codice:

text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
if "quindi" in text:
    print ("Sì, 'quindi' ricorre in questo estratto.")

Poiché nel codice è presente “quindi”, il risultato cor­ri­spon­den­te appare così:

Sì, 'quindi' ricorre in questo estratto.

Escludere la presenza di un termine

Per as­si­cu­rar­si che un termine non sia incluso, uti­liz­za­te “not in”. Di seguito i due esempi di codice. Il fun­zio­na­men­to è lo stesso delle query di ricerca positive.

text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
print("corto" not in text)
text = "Questo testo di esempio è molto lungo e quindi porta a un codice notevolmente più lungo."
if "corto" not in text:
print("No, 'corto' NON è presente in questo estratto.")

Dividere le stringhe in Python

È anche possibile dividere una stringa in Python. Un semplice esempio di divisione si presenta come segue:

text = "Qui si trova un testo di esempio"
print(text.split())

Il risultato sarà questo:

["Qui", "si", "trova", "un", "testo", "di", "esempio"]

Maggiori in­for­ma­zio­ni su split in Python sono di­spo­ni­bi­li sulla nostra Digital Guide.

Mo­di­fi­ca­re o can­cel­la­re delle stringhe in Python

Una stringa in Python non può essere mo­di­fi­ca­ta in seguito. Anche i singoli caratteri non possono essere can­cel­la­ti. Il programma impedirà quindi qualsiasi tentativo di modifica e vi­sua­liz­ze­rà un messaggio di errore. L’unica opzione per rimuovere le stringhe difettose dal codice è quindi la can­cel­la­zio­ne completa. Per farlo, si utilizza il comando del. Il fun­zio­na­men­to è il seguente:

text = "Qui si trova un testo di esempio"
del text
Vai al menu prin­ci­pa­le