Sostieni AppuntiFacili con una piccola donazione su PayPal
Dona con PayPalLe stringhe sono sequenze di caratteri usate per rappresentare testo in Python. Si possono scrivere tra virgolette singole, virgolette doppie, o anche su più righe con triple virgolette.
Esempi:
testo1 = 'Ciao'
testo2 = "Python"
testo3 = """Questo è
un testo su più righe"""
print(testo1)
print(testo2)
print(testo3)
Output: Ciao Python Questo è un testo su più righe
INFO
Python non fa distinzione tra virgolette singole e doppie. Scegli quelle che preferisci, ma sii coerente nel tuo codice.
Possibile unire (concatenare) due o più stringhe usando l’operatore +.
Esempio:
nome = "Fanchetto"
cognome = "Lipini"
messaggio = nome + " " + cognome
print(messaggio)
Output: Fanchetto Lipini
Possibile anche ripetere una stringa con l’operatore *:
risata = "ha" * 3
print(risata)
Output: hahaha
Le stringhe sono sequenze indicizzate, proprio come le liste o le tuple. Possibile accedere ai singoli caratteri tramite un indice numerico (partendo da 0).
Esempio:
testo = "Python"
print(testo[0]) # P
print(testo[1]) # y
print(testo[-1]) # n (ultimo carattere)
Possibile ottenere sotto-stringhe utilizzando la notazione [inizio:fine:passo].
Esempi:
testo = "Programmazione"
print(testo[0:7]) # Program
print(testo[:7]) # Program (stesso risultato)
print(testo[7:]) # mazione
print(testo[-5:]) # zione
print(testo[::2]) # Pormzi (un carattere ogni due)
INFO
Gli indici in Python escludono il valore finale, quindi testo[0:7] prende i caratteri da 0 a 6.
Le stringhe in Python hanno molti metodi predefiniti per manipolare il testo. Ecco i più usati:
| Metodo | Descrizione | Esempio | Output |
|---|---|---|---|
.upper() | Converte tutti i caratteri in maiuscolo | "ciao".upper() | "CIAO" |
.lower() | Converte tutti i caratteri in minuscolo | "CIAO".lower() | "ciao" |
.capitalize() | Maiuscola la prima lettera | "python".capitalize() | "Python" |
.title() | Maiuscola ogni parola | "ciao mondo".title() | "Ciao Mondo" |
.strip() | Rimuove spazi all’inizio e alla fine | " ciao ".strip() | "ciao" |
.replace(a, b) | Sostituisce una sottostringa con un’altra | "ciao".replace("a", "u") | "ciuo" |
.split() | Divide una stringa in una lista di parole | "ciao mondo".split() | ['ciao', 'mondo'] |
.join() | Unisce una lista di stringhe con un separatore | " ".join(["ciao", "mondo"]) | "ciao mondo" |
Possibile controllare se una sottostringa è presente in un’altra usando gli operatori in e not in.
Esempio:
testo = "Programmare in Python è divertente"
print("Python" in testo) # True
print("Java" not in testo) # True
Le f-string (introdotte in Python 3.6) sono il modo più semplice e leggibile per inserire variabili dentro le stringhe.
Esempio:
nome = "Anna"
eta = 25
print(f"Ciao, mi chiamo {nome} e ho {eta} anni.")
Output: Ciao, mi chiamo Anna e ho 25 anni.
.format()nome = "Luca"
linguaggio = "Python"
frase = "Ciao, sono {} e programmo in {}.".format(nome, linguaggio)
print(frase)
Output: Ciao, sono Luca e programmo in Python.
Possibile creare stringhe su più righe usando triple virgolette (''' o """).
Esempio:
testo = """Questa è una stringa
su più righe,
scritta in Python."""
print(testo)
Output: Questa è una stringa su più righe, scritta in Python.
Chiedi all’utente il suo nome e stampa:
Data la stringa testo = "Imparare Python è bellissimo (spero)", stampa:
Dividi la frase "Python è un linguaggio potente e semplice" in parole e stampale una per riga.
Scrivi un programma che prenda una frase e sostituisca tutte le vocali con *.
Esempio: Input → “Ciao mondo” Output → “C*** m*nd*”
Prenota una lezione