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 vir golette 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