Programma
Le turtle graphics sono uno degli approcci più divertenti per imparare Python. Si tratta di uno script Python semplice che ti permette di creare grafiche artistiche e animazioni "comandando" una tartaruga a muoversi sullo schermo. Nato per insegnare la programmazione ai più giovani, Turtle graphics è diventato sempre più popolare come modo per i principianti di fare esperienza pratica con i concetti di coding.
Con Turtle puoi creare di tutto, dalle forme semplici a motivi geometrici complessi, mentre impari i fondamenti di Python come cicli, funzioni e condizionali. Che tu sia alle prime armi con la programmazione o voglia usare le tue competenze per qualcosa di creativo, le turtle graphics fanno al caso tuo.
In questo articolo, introdurremo le basi delle turtle graphics e ti guideremo nella creazione di alcuni progetti entusiasmanti. Costruiremo le fondamenta per esplorare design più complessi, dai quadrati semplici alle spirali più elaborate. Oltre a divertirti con le turtle graphics, il nostro corso Introduzione a Python è un buon complemento per continuare a migliorare le tue abilità.
Cosa sono le Turtle Graphics in Python?
Turtle Graphics è un modulo Python che ti consente di disegnare e animare controllando una "tartaruga" virtuale sullo schermo. Offre un modo intuitivo e divertente di interagire con il codice: puoi impartire ordini alla tartaruga come "vai avanti", "gira a sinistra" o "disegna un cerchio" e vedere la sua risposta in tempo reale. Il modulo turtle è incluso in tutte le versioni attuali di Python 3 (fino a Python 3.14).
La "tartaruga" in Turtle Graphics è un cursore o una penna che si muove sullo schermo in base ai tuoi comandi. Mentre avanza, può lasciare una traccia, creando linee, forme o disegni più elaborati in risposta alle tue istruzioni. L'idea è che il feedback visivo renda più facile apprendere principi di programmazione di base ma importanti. In particolare, puoi imparare cicli (per ripetere forme), funzioni (per creare codice riutilizzabile) e condizionali (per decidere cosa deve fare la tartaruga dopo). Per esempio, se volessimo disegnare una stella, potremmo usare un ciclo per ripetere quattro volte i movimenti in avanti e le rotazioni della tartaruga. Nota che, siccome le turtle graphics fanno parte della libreria standard di Python, non sono necessarie installazioni aggiuntive.
import turtle
star = turtle.Turtle()
star.right(75)
star.forward(100)
for i in range(4):
star.right(144)
star.forward(100)
turtle.done()

Disegnare una stella con le turtle graphics. Immagine dell'autore
Utilizzi tipici delle Turtle Graphics
Disegnare forme e motivi con le turtle graphics è piuttosto divertente, e ha molte applicazioni concrete, soprattutto in ambito didattico. Ecco alcune applicazioni tipiche:
Insegnare i concetti introduttivi di programmazione
Turtle graphics è uno strumento popolare per insegnare i concetti base della programmazione in tutorial e in classe. Grazie al metodo semplice e visivo, i principianti trovano meno intimidatorio imparare a programmare. Più sotto vedremo alcuni esempi dettagliati.
Creare disegni e animazioni
Con le turtle graphics puoi creare motivi e animazioni complicati, oppure forme semplici come quadrati e cerchi. Puoi iniziare con design di base e passare via via a quelli più complessi. Puoi anche personalizzare movimento, direzione, spessore della linea e colore della tartaruga.
Progettare giochi o progetti interattivi
Le turtle graphics possono essere usate per realizzare semplici progetti interattivi o giochi. Puoi creare giochi semplici, come un risolutore di labirinti o un Pong di base, combinando i comandi della tartaruga con l'input umano (come clic del mouse o tasti della tastiera).
Visualizzare algoritmi
Può sembrare sorprendente, ma le turtle graphics sono ottime per visualizzare algoritmi. Puoi usarle per dimostrare algoritmi di ordinamento, frattali o motivi ricorsivi.
Comandi Python comuni per Turtle Graphics
Familiarizziamo con alcuni comandi di base di turtle graphics per aiutarti a creare i tuoi primi design. Partiremo dalle operazioni più semplici per controllare il movimento della tartaruga e le azioni di disegno.
1. import turtle
Prima di disegnare, devi importare il modulo turtle graphics con questo comando. Ti consente di accedere a tutte le funzioni di turtle.
import turtle
2. turtle.forward()
Questo comando fa avanzare la tartaruga di un numero specifico di unità, in questo caso 100. La tartaruga disegna una linea mentre si muove.
turtle.forward(100)
3. turtle.right()
La tartaruga ruota di 90 gradi a destra sul posto (cambia direzione senza avanzare). Usalo per preparare il prossimo movimento in avanti.
turtle.right(90)
4. turtle.circle()
Questo comando disegna un cerchio con raggio 50 unità. Puoi modificare il raggio per disegnare cerchi più grandi o più piccoli.
turtle.circle(50)
5. turtle.penup()
Solleva la penna, quindi la tartaruga si muoverà senza disegnare nulla. È utile per riposizionare la tartaruga senza lasciare tracce.
turtle.penup()
6. turtle.pendown()
Abbassa la penna, consentendo alla tartaruga di riprendere a disegnare dopo un comando penup().
turtle.pendown()
Esempi di progetti Python con Turtle Graphics
Passiamo ad alcuni esempi reali di turtle graphics in Python che puoi provare da solo. Ti basta copiare e incollare il codice fornito per iniziare, poi modificarlo in base al tuo stile.
Forme semplici
Ti consiglio di iniziare con forme semplici come quadrati e triangoli. Queste forme prevedono di far avanzare la tartaruga e farla girare ad angoli specifici.
import turtle
t = turtle.Turtle()
for _ in range(4):
t.forward(100)
t.right(90)
turtle.done()

Disegnare un quadrato con le turtle graphics. Immagine dell'autore
Motivi geometrici
I motivi geometrici si possono creare ripetendo forme semplici con i cicli. Puoi generare design come spirali o stelle usando cicli e funzioni. Motivi di questo tipo mostrano come ripetizione e simmetria creino complessità a partire dalla semplicità.
import turtle
t = turtle.Turtle()
for _ in range(36):
for _ in range(5):
t.forward(100)
t.right(144)
t.right(10)
turtle.done()

Disegnare un motivo a stella a spirale con le turtle graphics. Immagine dell'autore
La chiave è sperimentare con il numero di cicli e gli angoli per vedere come evolvono i motivi. Regolando i parametri, puoi creare infinite variazioni.
Frattali e design ricorsivi
I frattali sono motivi ricorsivi che si ripetono a scale diverse. Sono forme auto-simili, cioè appaiono uguali a qualunque scala e possono avere perimetro infinito in un'area finita. I frattali sono ottimi per apprendere i concetti di ricorsione. Un frattale famoso nelle turtle graphics è il triangolo di Sierpiński, una serie di triangoli più piccoli che formano un triangolo più grande.
import turtle
def sierpinski(t, order, size):
if order == 0:
for _ in range(3):
t.forward(size)
t.left(120)
else:
sierpinski(t, order-1, size/2)
t.forward(size/2)
sierpinski(t, order-1, size/2)
t.backward(size/2)
t.left(60)
t.forward(size/2)
t.right(60)
sierpinski(t, order-1, size/2)
t.left(60)
t.backward(size/2)
t.right(60)
t = turtle.Turtle()
sierpinski(t, 3, 200)
turtle.done()

Disegnare un triangolo di Sierpiński con le turtle graphics. Immagine dell'autore
Disegni interattivi
Puoi anche controllare i movimenti della tartaruga con tastiera o mouse, per un'esperienza ancora più dinamica. Puoi creare progetti come un Etch-A-Sketch digitale, in cui controlli la tartaruga con le frecce per disegnare sullo schermo. Puoi anche migliorare il codice seguente aggiungendo opzioni per cambiare colori o pulire lo schermo.
import turtle
t = turtle.Turtle()
def move_up():
t.setheading(90)
t.forward(10)
def move_down():
t.setheading(270)
t.forward(10)
def move_left():
t.setheading(180)
t.forward(10)
def move_right():
t.setheading(0)
t.forward(10)
screen = turtle.Screen()
screen.listen()
screen.onkey(move_up, "Up")
screen.onkey(move_down, "Down")
screen.onkey(move_left, "Left")
screen.onkey(move_right, "Right")
screen.mainloop()
Design creativi
Le turtle graphics non si limitano a forme e motivi. Combinando cicli, ricorsioni e condizionali puoi creare design unici e bellissimi. Con un po' di pratica, si possono realizzare creazioni artistiche come mandala o forme astratte. In questo esempio, la tartaruga disegna un mandala colorato cambiando continuamente direzione e colore.
import turtle
t = turtle.Turtle()
t.speed(0)
colors = ['red', 'purple', 'blue', 'green', 'orange', 'yellow']
for x in range(360):
t.pencolor(colors[x % 6])
t.width(x // 100 + 1)
t.forward(x)
t.left(59)
turtle.done()

Disegnare un mandala con le turtle graphics. Immagine dell'autore
Consigli per iniziare con le Turtle Graphics
Ecco alcuni consigli per usare al meglio le turtle graphics in Python:
- Inizia con forme semplici: Disegna forme di base come quadrati e cerchi. Ti aiuterà a capire come funzionano i movimenti della tartaruga e ti darà solide basi per design più complessi.
-
Sperimenta con colori e spessore della penna: Turtle graphics ti permette di cambiare lo spessore della penna, la velocità e il colore della tartaruga. Usa
turtle.pensize(),turtle.speed()eturtle.color()per rendere i tuoi disegni più interessanti.
- Usa cicli e funzioni: I cicli servono per creare in modo efficiente motivi ripetitivi. Invece di scrivere manualmente il codice per disegnare più volte le stesse forme, usa i cicli e le funzioni per automatizzare le azioni ripetitive e creare design complessi con meno righe di codice.
- Esplora la documentazione: Il modulo turtle ha numerosi comandi oltre ai movimenti di base. Approfondisci la documentazione per scoprire funzionalità come forme, timbri e tecniche di disegno più avanzate. Ti stupirai di ciò che puoi creare!
Conclusione
Oltre alle forme che abbiamo creato in questo articolo—come quadrati, stelle, spirali e il triangolo di Sierpiński—le turtle graphics ti permettono di sperimentarne altre, come i pentagoni o motivi floreali complessi. Man mano che prendi confidenza, le turtle graphics crescono con te, permettendoti di affrontare progetti sempre più impegnativi. Continua a sperimentare e a provare nuove idee. Ricorda anche di fare il passo successivo provando il nostro corso introduttivo a Python per continuare a migliorare le tue competenze!
Technical writer specializzato in AI, ML e data science: rende idee complesse chiare e accessibili.
FAQ su Python Turtle Graphics
Che cosa sono le turtle graphics in Python?
Turtle Graphics è un modulo Python che ti permette di creare grafica e animazioni controllando una "tartaruga" virtuale sullo schermo. Offre un modo coinvolgente per imparare a programmare disegnando forme e motivi.
Come inizio a usare le turtle graphics in Python?
Per iniziare, devi importare il modulo turtle in Python usando import turtle. Da lì, puoi usare comandi come turtle.forward(), turtle.right() e turtle.circle() per controllare i movimenti della tartaruga e creare disegni.
Che tipi di progetti Python posso creare con le turtle graphics?
Puoi creare un'ampia gamma di progetti, dalle forme semplici come quadrati e cerchi a motivi geometrici più complessi, animazioni, frattali e persino giochi o disegni interattivi.
Posso creare progetti Python interattivi con le turtle graphics?
Sì, Turtle Graphics può essere usato per creare progetti interattivi. Per esempio, puoi usare la tastiera per controllare i movimenti della tartaruga e disegnare in modo dinamico, simile a un Etch-A-Sketch digitale.
Come posso migliorare i miei progetti di turtle graphics in Python?
Inizia con forme semplici ed esplora gradualmente design più complessi. Usa cicli e funzioni per creare motivi ripetitivi, sperimenta con spessori e colori della penna e consulta la documentazione del modulo turtle per scoprire comandi e tecniche avanzate.


