arrow_backTorna alle field notes
TUTORING Pubblicato 6 Aug 2026

Da blocchi a testo: Scratch a Python per bambini 9–12

Una guida passo dopo passo per aiutare i bambini a passare dai blocchi Scratch al codice Python vero, con esercizi concreti e errori comuni.

I bambini che hanno realizzato alcuni progetti Scratch di solito si bloccano intorno ai 10 o 11 anni: i blocchi sembrano troppo semplici per quello che vogliono fare. Quel blocco è in realtà il momento giusto per introdurre Python. Questa guida traccia un percorso che mantiene le parti di Scratch che i bambini già comprendono (sprite, loop, eventi) e le mappa sul codice vero, invece di gettarli nella sintassi senza un ponte.

Perché il salto sembra più difficile di quanto dovrebbe

Scratch nasconde tre cose che all'improvviso diventano visibili in Python: i tipi di variabili, l'indentazione e gli errori di sintassi. Un bambino che ha trascinato un blocco "ripeti 10" non ha mai dovuto pensare ai due punti o alle parentesi. La prima settimana con Python è principalmente imparare a tollerare i messaggi di errore rossi senza arrendersi. Dite loro in anticipo: i programmatori professionisti vedono messaggi di errore decine di volte al giorno. Non è un segno che sono scarsi in questo.

Usate Trinket.io o Replit nel browser in modo che non ci sia nessun passo di installazione da affrontare per primo. Riservate l'installazione desktop (Python 3.12+ da python.org, più Thonny come editor) per quando sono interessati.

Mappare i concetti di Scratch direttamente su Python

Fate questo confronto esplicitamente, fianco a fianco, invece di partire da zero:

  • "quando la bandiera verde viene cliccata" → semplicemente eseguire il file .py
  • "ripeti 10" → for i in range(10):
  • "per sempre" → while True:
  • "se <> allora" → if condition:
  • "chiedi e attendi" → input("question: ")
  • variabili (i blocchi arancioni) → score = 0

Fate loro scrivere prima questo equivalente di Scratch, poiché è quasi una traduzione diretta:

score = 0
for i in range(5):
    score = score + 10
    print("Score is now:", score)

Eseguitelo, poi chiedete cosa accadrebbe se range(5) diventasse range(20). Prevedere l'output prima di eseguire il codice è l'abitudine più singola e importante da costruire qui.

Tre progetti che mantengono alta la motivazione

Un gioco di indovinare il numero è il classico primo progetto perché usa input(), if/elif/else e un loop, e funziona davvero come un vero programma:

import random
secret = random.randint(1, 20)
guess = 0
while guess != secret:
    guess = int(input("Guess a number 1-20: "))
    if guess < secret:
        print("Too low")
    elif guess > secret:
        print("Too high")
print("You got it!")

Una simulazione di animale domestico basata su testo (dare da mangiare, giocare, dormire, controllare le statistiche) funziona bene dopo perché i bambini hanno già realizzato qualcosa di simile in Scratch con i costumi dello sprite. Ora sono dizionari: pet = {"hunger": 5, "energy": 8}.

In terzo luogo, passate alla grafica turtle per una ricompensa visiva:

import turtle
t = turtle.Turtle()
for i in range(4):
    t.forward(100)
    t.right(90)

Questo disegna un quadrato e fa eco direttamente al pattern "muovi 10 passi, gira 90 gradi" dagli strumenti penna di Scratch. I bambini notano la somiglianza immediatamente, il che conta più per la fiducia di qualsiasi lezione sulla sintassi.

Gestire gli errori senza uccidere lo slancio

Aspettatevi IndentationError e NameError costantemente nel primo mese. Non correggete per loro — leggete il messaggio di errore ad alta voce insieme e trovate il numero di riga a cui punta. Gli errori di Python di solito dicono esattamente cosa c'è di sbagliato ("expected an indented block") anche se la formulazione è arida. Entro poche settimane la maggior parte dei bambini inizia a leggere i traceback più velocemente dell'adulto che li aiuta.

Una vera trappola: Python è case-sensitive e Scratch non lo è. Score e score sono variabili diverse. Questo confonde quasi ogni bambino proveniente dai blocchi, quindi fatelo notare presto piuttosto che lasciargli scoprirlo attraverso la frustrazione.

Un ritmo approssimativo di quattro settimane che funziona

Settimana 1: variabili, print(), input(), operatori matematici di base. Settimana 2: if/elif/else con il gioco di indovinare. Settimana 3: loop for e while, costruire la simulazione di animale domestico. Settimana 4: funzioni — racchiudere le azioni della simulazione di animale domestico nello stile def feed(pet):, che è il salto concettuale più grande dal momento che i blocchi personalizzati di Scratch solo accennano a questo.

Non abbiate fretta di passare oltre la settimana 4. Le funzioni sono dove il pensiero da "programmatore" inizia davvero, e i bambini che saltano direttamente a progetti più grandi senza comprenderle tendono a scrivere codice disordinato e copiato-incollato che è difficile da sottoporre a debug.

Se vostro figlio sta godendo questo cambiamento, Korra Studio ha altri tutorial Python per principianti e segmenti generali di informatica che vale la pena esplorare successivamente.

Scritto con assistenza AI, revisionato e pubblicato da Michal Pilch (CISSP), Korra Studio.

Pronto per andare oltre?

Questa è una nota dalla knowledge base di Korra Studio — la piattaforma abbina ogni argomento a mentoring 1-to-1.

Inizia gratisarrow_forward