9 settembre 2026
Python per chi fa frontend: variabili, stringhe e input per costruire una mini app “split bill”
Un primo progetto pratico (tipo “PayUp”) per imparare le basi senza perdersi in teoria.
Python è una scelta sensata anche per chi lavora soprattutto nel frontend: si legge facilmente, si scrive in fretta e torna utile per scripting, automazioni e prototipi. In questo articolo rivediamo i mattoni fondamentali (variabili, tipi, stringhe, formattazione e input) costruendo una piccola app da terminale per dividere una spesa con percentuale di servizio e numero di persone.
Chi fa frontend spesso associa la produttività a due cose: feedback rapido e codice leggibile. Python spicca proprio qui: sintassi pulita, poche “cerimonie”, e un percorso ideale per costruire piccoli strumenti utili (anche nel lavoro quotidiano: script, generatori, analisi veloci, automazioni).
Per fissare le basi senza rimanere impantanati nella teoria, l’approccio migliore è un micro‑progetto: una mini app da terminale per splittare una spesa (cena, viaggio, serata), calcolare una percentuale di servizio/mancia e ottenere quanto deve pagare ogni persona.
Di seguito trovi i concetti fondamentali che servono, con esempi mirati.
1) Anatomia minima di un programma Python: variabili e print()
Una variabile è un’etichetta che punta a un valore. In Python l’assegnazione si fa con =:
meal_total = 85
print(meal_total) # 85
Il punto interessante non è stampare 85, ma capire che:
- puoi usare il nome (
meal_total) in più punti; - cambiando il valore in un solo posto, tutto ciò che dipende da quel valore si aggiorna.
meal_total = 85
service_charge = 15
grand_total = meal_total + service_charge
print(grand_total) # 100
meal_total = 120
grand_total = meal_total + service_charge
print(grand_total) # 135
Re-assegnazione: l’ultimo valore “vince”
Una variabile può essere riassegnata:
my_party = 3
print(my_party) # 3
my_party = 5
print(my_party) # 5
Non esiste “memoria” automatica dei vecchi valori: una riassegnazione sostituisce il riferimento precedente.
2) Convenzioni di naming (per non odiarti tra una settimana)
In Python, lo standard de facto è lo snake_case:
- ✅
drinks_total,service_percentage,people_count - ❌
drinksTotal(camelCase stile JS) - ❌
x,yse non sono davvero variabili “matematiche” senza significato di dominio
E occhio alle parole riservate: print, for, if, ecc. non possono essere nomi di variabili.
3) Stringhe: testo tra virgolette (sempre coerenti)
Per salvare testo usi una stringa, racchiusa tra apici singoli o doppi:
restaurant = "Paul's Pizza"
occasion = 'cena di gruppo'
L’importante è non mischiare gli apici nella stessa stringa:
# ERRORE
lunch = "salad'
E se scrivi testo senza virgolette, Python lo interpreta come nome di variabile:
# ERRORE: NameError
meal = pizza
Concatenazione: sommare stringhe
Le stringhe si possono “sommarle” (concatenare):
breakfast = "pancakes "
lunch = "salad "
dinner = "pizza"
meal_plan = breakfast + lunch + dinner
print(meal_plan) # pancakes salad pizza
Funziona, ma per testi più lunghi spesso conviene usare formattazione (vedi più sotto).
4) Commenti: istruzioni che Python ignora
Una riga che inizia con # è un commento:
# TODO: gestire input non valido
Ottimi per lasciare note o spiegare passaggi chiave.
5) Input da utente: input() e conversioni di tipo
Una mini app “split bill” ha bisogno di chiedere informazioni. In Python si usa:
name = input("Come ti chiami? ")
Attenzione: input() restituisce sempre una stringa. Se ti serve un numero, devi convertire:
expense = float(input("Totale spesa? "))
people = int(input("Quante persone? "))
service_pct = float(input("Servizio (%)? "))
Qui entrano in gioco i tipi più comuni:
strper testointper interifloatper decimali
6) Mini progetto: “PayUp” (split bill da terminale)
Ecco una versione compatta e leggibile dell’app:
print("Benvenuto in PayUp!\n")
occasion = input("Occasione/locale: ")
expense = float(input("Spesa totale (€): "))
service_pct = float(input("Servizio/mancia (%) : "))
people = int(input("Numero persone: "))
service_amount = expense * (service_pct / 100)
grand_total = expense + service_amount
per_person = grand_total / people
print("\n--- Riepilogo ---")
print(f"Occasione: {occasion}")
print(f"Spesa: €{expense:.2f}")
print(f"Servizio ({service_pct:.0f}%): €{service_amount:.2f}")
print(f"Totale: €{grand_total:.2f}")
print(f"Persone: {people}")
print(f"Quota a testa: €{per_person:.2f}")
Perché f"..." è una buona abitudine
Le f-string rendono il testo più leggibile rispetto a concatenazioni infinite e gestiscono bene numeri e formati:
€{expense:.2f}forza due decimali({service_pct:.0f}%)stampa la percentuale senza decimali
Sintesi e implicazione pratica
Con un progetto piccolo come uno split bill hai già toccato i mattoni essenziali di Python:
- variabili e riassegnazione
print()e output leggibile- stringhe e formattazione
- input utente
- tipi (
str,int,float) e conversioni - operazioni matematiche di base
Il passo successivo, per rendere l’app “da usare davvero”, è aggiungere validazione dell’input (es. persone > 0, percentuale non negativa, gestione di valori non numerici) e incapsulare il tutto in funzioni. Ma già così hai un esempio concreto di come Python permetta di costruire strumenti utili in pochi minuti, con un codice che resta chiaro anche a distanza di tempo.