Stringhe

Una stringa è una sequenza immutabile di caratteri considerata come un valore. Le stringhe supportano tutti gli operatori e le funzioni di sequenza che risultano in una nuova stringa. Ad esempio, "abcdef"[1:4] ha come risultato l'output "bcd".

In Python, i caratteri sono rappresentati da stringhe di lunghezza uno.

I letterali di stringa sono definiti mediante l'utilizzo di tripli o singoli apici. Le stringhe definite utilizzando le virgolette singole non possono essere estese alle righe, mentre le stringhe definite utilizzando le virgolette triple possono esserlo. È possibile racchiudere una stringa tra virgolette singole (') o doppie ("). Un carattere virgolette può contenere l'altro carattere virgolette senza virgolette o il carattere virgolette senza virgolette, preceduto dal carattere barra retroversa (\).

Esempi

"This is a string"
'This is also a string'
"It's a string"
'This book is called "Python Scripting and Automation Guide."'
"This is an escape quote (\") in a quoted string"

Più stringhe separate da spazi vengono automaticamente concatenate dal parser Python. Ciò semplifica l'immissione di stringhe lunghe e la combinazione di tipi di virgolette in una singola stringa. Ad esempio:

"This string uses ' and " 'that string uses ".'

Si ottiene il seguente risultato:

This string uses ' and that string uses ".

Le stringhe supportano diversi metodi utili. Alcuni di tali metodi sono indicati nella tabella riportata di seguito.

Tabella 1. Metodi stringa
Metodo Utilizzo
s.capitalize() Lettera maiuscola iniziale s
s.count(ss {,start {,end}}) Conta le ricorrenze di ss in s[start:end]
s.startswith(str {, start {, end}})
s.endswith(str {, start {, end}}) 
Verifica se s inizia con str
Verifica se s termina con str
s.expandtabs({size}) Sostituisce le tabulazioni con gli spazi; il valore size predefinito è 8
s.find(str {, start {, end}})
s.rfind(str {, start {, end}})
Individua il primo indice di str in s; se non trovato, il risultato è -1. rfind esegue la ricerca da destra a sinistra.
s.index(str {, start {, end}})
s.rindex(str {, start {, end}})
Trova il primo indice di str in s; se non trovato, genera ValueError. rindex esegue la ricerca da destra a sinistra.
s.isalnum Verifica se la stringa è alfanumerica
s.isalpha Verifica se la stringa è alfabetica
s.isnum Verifica se la stringa è numerica
s.isupper Verifica se la stringa contiene tutte lettere maiuscole.
s.islower Verifica se la stringa contiene tutte lettere minuscole
s.isspace Verifica se la stringa contiene tutti spazi vuoti.
s.istitle Verifica se la stringa è una sequenza di stringhe alfanumeriche con lettera maiuscola iniziale
s.lower()
s.upper()
s.swapcase()
s.title()
Converti in tutte le lettere minuscole
Converti in tutte le lettere maiuscole
Converti in tutte le lettere opposte
Converti in tutte le lettere maiuscole
s.join(seq) Unisce le stringhe in seq con s come separatore
s.splitlines({keep}) Suddivide s in righe, se keep è true, conserva la nuove righe
s.split({sep {, max}}) Suddivide s in "parole" utilizzando sep (il valore predefinito sep è uno spazio) per un massimo di max volte
s.ljust(width)
s.rjust(width)
s.center(width)
s.zfill(width)
Giustifica a sinistra la stringa in un campo width wide
Giustifica a destra la stringa in un campo width wide
centra la stringa in un campo width wide
Compilare con 0.
s.lstrip()
s.rstrip()
s.strip()
Rimuovi spazio vuoto iniziale
Rimuovi spazio vuoto finale
Rimuovi spazio vuoto iniziale e finale
s.translate(str {,delc}) Tradurre s utilizzando la tabella, dopo aver rimosso i caratteri in delc. str deve essere una stringa con lunghezza == 256.
s.replace(old, new {, max}) Sostituisce tutte o le max ricorrenze della stringa old con la stringa new