Capitolo 4: I/O da console

Padroneggia input e output da console: print(), input() e varie tecniche di formattazione delle stringhe.

Scarica chapter4.py

Obiettivi

1. Funzione print()

Stampa valori in console. Predefinito sep=' ', end='\n':

print("Hello", "World")           # Ciao mondo
print("No newline", end="")           # nessuna nuova riga
print(" → next")                       # passaggio a nuova riga

Personalizza separatore e flush:

print(1, 2, 3, sep=" - ")         # 1 - 2 - 3
import sys
print("Immediate", flush=True)         # svuota istantaneamente il buffer

2. Funzione input()

Mostra un prompt e legge una riga (ritorna str):

name = input("Inserisci il tuo nome: ")
age_str = input("Inserisci la tua età: ")
age = int(age_str)                      # converti in intero
print(f"Nome: {name}, Età: {age}")

Gestisci sempre possibili errori di conversione:

try:
    num = int(input("Numero: "))
except ValueError:
    print("Numero non valido!")          # avviso di errore

3. Formattazione delle stringhe

a) f-string (Python 3.6+)

user = "Alice"
score = 95.5
print(f"{user} ha totalizzato {score:.1f} punti")

b) str.format()

template = "{} ha {} mele"
print(template.format("Bob", 3))

c) Operatore %

fmt = "Totale: %d elementi, %0.2f$"
print(fmt % (7, 15.239))

Esercizi

  1. Scrivi uno script che chiede tre numeri e ne stampa la somma.
  2. Richiedi nome e cognome separatamente e saluta con una f-string.
  3. Crea un piccolo menu: chiedi “1) Aggiungi 2) Sottrai”, leggi la scelta ed esegui l’operazione su due numeri.