Variabili di Output in Python
Scopri come visualizzare variabili in Python con print(), concatenazione, f-string e gli argomenti sep/end, con esempi chiari e insidie comuni.
La funzione print() di Python è lo strumento principale per visualizzare i valori delle variabili sullo schermo. Questo capitolo illustra tutti i modi pratici per produrre output con le variabili — dal semplice valore singolo fino alle string formattate con più variabili — e tratta le insidie più comuni in cui incappano i principianti.
Questo capitolo comprende:
- Stampare una singola variabile
- Stampare più variabili con le virgole (argomenti
sepedend) - Concatenare string con
+ - Usare le f-string per incorporare variabili inline
- Convertire valori non-string con
str()
Capitoli correlati: Variabili Python · Nomi delle Variabili · Formattazione delle String · Variabili Globali
Stampare una Singola Variabile
Passa qualsiasi variabile direttamente a print() e Python la converte in testo automaticamente.
Stampare una variabile string
Hello, World!Questo funziona per ogni tipo built-in — numeri, boolean, liste e così via:
count = 42
price = 9.99
active = True
print(count)
print(price)
print(active)42
9.99
TrueStampare Più Variabili
Usare le Virgole
Passa più variabili a print() separate da virgole. Python inserisce di default un singolo spazio tra di esse.
name = "Alice"
age = 30
print("Name:", name)
print("Age:", age)Name: Alice
Age: 30Puoi passare quanti argomenti vuoi in una singola chiamata a print():
x = 10
y = 20
z = 30
print(x, y, z)10 20 30L'Argomento sep
Usa sep per modificare il carattere che separa i valori (il default è uno spazio):
first = "John"
last = "Doe"
print(first, last, sep="-")John-DoeL'Argomento end
Per impostazione predefinita, print() aggiunge un a-capo \n alla fine. Puoi sovrascriverlo con end:
print("Loading", end="...")
print("done")Loading...doneEntrambi i valori compaiono sulla stessa riga perché il primo print() non emette un a-capo.
Concatenazione di String con +
Unisci variabili string con l'operatore + per costruire una singola string di output:
name = "Alice"
greeting = "Hello, " + name + "!"
print(greeting)Hello, Alice!Importante: L'operatore + funziona solo tra string. Se provi a concatenare una string con un numero ottieni un TypeError:
age = 30
# print("Age: " + age) # TypeError: can only concatenate str (not "int") to str
print("Age: " + str(age)) # correct — convert age to string firstAge: 30Usa str() per convertire qualsiasi valore non-string prima di usare +. Quando usi una virgola al posto di +, Python gestisce la conversione per te — ma perdi il controllo sulla spaziatura e la formattazione.
Visualizzare Variabili con le f-String
Le f-string (Python 3.6+) sono il modo più leggibile per incorporare variabili all'interno del testo. Aggiungi il prefisso f alla string e inserisci i nomi delle variabili (o qualsiasi espressione) tra {}:
name = "Alice"
score = 95.5
print(f"{name} scored {score:.1f} points")Alice scored 95.5 pointsIl :.1f all'interno delle parentesi graffe è un specificatore di formato che arrotonda il float a una cifra decimale. Le f-string possono valutare qualsiasi espressione Python, non solo nomi di variabili:
x = 5
y = 2
print(f"{x} + {y} = {x + y}")
print(f"{x} / {y} = {x / y:.2f}")5 + 2 = 7
5 / 2 = 2.50Per una guida completa agli specificatori di formato (allineamento, padding, basi numeriche), vedi Formattazione delle String.
Risultati Aritmetici come Output
Python valuta le espressioni aritmetiche prima di stamparle. Puoi passare l'espressione direttamente a print() senza doverla salvare prima in una variabile:
Generare output basati su calcoli in Python
7
3
10
2.5
1Nota che dividere due interi in Python 3 restituisce sempre un float (2.5, non 2). Usa // per la divisione intera (floor division):
print(5 // 2) # 2
print(5 % 2) # 12
1Controllare il Tipo di una Variabile
Usa type() all'interno di print() per ispezionare il tipo che una variabile contiene — utile durante il debug:
x = 42
name = "Alice"
pi = 3.14
print(type(x))
print(type(name))
print(type(pi))<class 'int'>
<class 'str'>
<class 'float'>Virgola vs. + — Confronto Rapido
| Metodo | Sintassi | Conversione automatica | Controllo spaziatura |
|---|---|---|---|
| Virgola | print(a, b) | Sì | Tramite argomento sep |
| Concatenazione | print(a + b) | No — usa str() | Nessun separatore aggiunto |
| f-string | print(f"{a} {b}") | Sì | Controllo completo |
Per la maggior parte del nuovo codice, preferisci le f-string. Sono le più leggibili e le meno soggette a errori.