programa
Turtle graphics es una de las maneras más entretenidas de aprender Python. Es un sencillo script de Python que te permite crear gráficos artísticos y animaciones "ordenando" a una tortuga que se mueva por la pantalla. Turtle graphics, que nació para enseñar a programar a estudiantes jóvenes, se ha hecho muy popular como vía para que principiantes practiquen conceptos de programación de forma práctica.
Con Turtle puedes construir desde formas básicas hasta patrones geométricos sofisticados mientras aprendes los fundamentos de Python como bucles, funciones y condicionales. Tanto si estás empezando a programar como si quieres dar un toque creativo a tus habilidades, turtle graphics está para ayudarte.
En este artículo, veremos lo esencial de turtle graphics y te guiaremos para crear algunos proyectos muy chulos. Sentaremos las bases para explorar diseños más complejos, desde cuadrados sencillos hasta espirales intrincadas. Además de experimentar con turtle graphics, nuestro curso de Introducción a Python es un gran complemento para que sigas mejorando tus habilidades.
¿Qué es Turtle Graphics en Python?
Turtle Graphics es un módulo de Python que te permite dibujar y animar controlando una "tortuga" virtual en la pantalla. Ofrece una forma intuitiva y divertida de interactuar con el código: le das órdenes a la tortuga como "avanza", "gira a la izquierda" o "dibuja un círculo" y ves el resultado en tiempo real. El módulo turtle viene incluido en todas las versiones actuales de Python 3 (hasta Python 3.14).
La "tortuga" en Turtle Graphics es un cursor o lápiz que se mueve por la pantalla según tus comandos. Al avanzar, puede dejar un trazo y crear líneas, formas o dibujos más elaborados en respuesta a tus órdenes. La idea es que la retroalimentación visual facilita aprender principios básicos pero importantes de programación. En particular, puedes aprender sobre bucles (para repetir formas), funciones (para crear código reutilizable) y condicionales (para decidir qué debe hacer la tortuga a continuación). Por ejemplo, si quisiéramos dibujar una estrella, podríamos usar un bucle para repetir los movimientos de avance y giro de la tortuga cuatro veces. Ten en cuenta que, siendo turtle graphics parte de la biblioteca estándar de Python, no necesitas instalaciones adicionales.
import turtle
star = turtle.Turtle()
star.right(75)
star.forward(100)
for i in range(4):
star.right(144)
star.forward(100)
turtle.done()

Dibujar una estrella con turtle graphics. Imagen del autor
Usos típicos de turtle graphics
Dibujar formas y patrones con turtle graphics es muy entretenido y tiene muchas aplicaciones reales, especialmente en la enseñanza. Aquí van algunas aplicaciones típicas:
Enseñar conceptos introductorios de programación
Turtle graphics es una herramienta popular para impartir conceptos básicos de programación en tutoriales y en el aula. Gracias a su enfoque visual y directo, a los principiantes les resulta menos intimidante aprender a programar. Más abajo veremos ejemplos más detallados.
Crear dibujos y animaciones
Con turtle graphics puedes crear desde patrones y animaciones complejas hasta formas simples como cuadrados y círculos. Puedes empezar con diseños básicos e ir subiendo el nivel. También puedes personalizar el movimiento y la dirección de la tortuga, el grosor de línea y el color.
Diseñar juegos o proyectos interactivos
Turtle graphics puede usarse para proyectos o juegos interactivos sencillos. Combinando comandos de la tortuga con interacción humana (como clics de ratón o entradas por teclado) puedes crear juegos simples, como un resolutor de laberintos o un Pong básico.
Visualizar algoritmos
Aunque sorprenda, turtle graphics es muy útil para visualizar algoritmos. Puedes usarlo para demostrar algoritmos de ordenación, fractales o patrones recursivos.
Comandos habituales de turtle graphics en Python
Vamos a familiarizarnos con algunos comandos básicos de turtle graphics para ayudarte a crear tus primeros diseños. Empezaremos por las operaciones más simples para controlar el movimiento de la tortuga y las acciones de dibujo.
1. import turtle
Antes de dibujar, debes importar el módulo de turtle graphics con este comando. Te da acceso a todas las funciones de Turtle.
import turtle
2. turtle.forward()
Este comando mueve la tortuga hacia delante un número concreto de unidades; en este caso, 100. La tortuga dibuja una línea mientras se mueve.
turtle.forward(100)
3. turtle.right()
La tortuga gira 90 grados a la derecha sobre sí misma (cambia la orientación sin avanzar). Úsalo para preparar el siguiente movimiento hacia delante.
turtle.right(90)
4. turtle.circle()
Este comando dibuja un círculo con radio de 50 unidades. Puedes modificar el radio para hacer círculos más grandes o más pequeños.
turtle.circle(50)
5. turtle.penup()
Levanta el lápiz, de modo que la tortuga se mueve sin dibujar. Es útil para recolocar la tortuga sin dejar rastro.
turtle.penup()
6. turtle.pendown()
Baja el lápiz para que la tortuga vuelva a dibujar tras un comando penup().
turtle.pendown()
Ejemplos de proyectos con turtle graphics en Python
Pasemos a algunos ejemplos reales de turtle graphics en Python que puedes probar tú mismo. Copia y pega el código que te damos para empezar y luego modifícalo a tu gusto.
Formas simples
Te recomiendo empezar por figuras sencillas como cuadrados y triángulos. Estas formas implican avanzar con la tortuga y girarla en ángulos concretos.
import turtle
t = turtle.Turtle()
for _ in range(4):
t.forward(100)
t.right(90)
turtle.done()

Dibujar un cuadrado con turtle graphics. Imagen del autor
Patrones geométricos
Puedes crear patrones geométricos repitiendo formas simples con bucles. Con bucles y funciones puedes generar diseños como espirales o estrellas. Patrones como estos muestran cómo la repetición y la simetría generan complejidad a partir de la sencillez.
import turtle
t = turtle.Turtle()
for _ in range(36):
for _ in range(5):
t.forward(100)
t.right(144)
t.right(10)
turtle.done()

Dibujar un patrón de estrellas en espiral con turtle graphics. Imagen del autor
La clave está en experimentar con el número de bucles y los ángulos para ver cómo evolucionan los patrones. Ajustando los parámetros puedes crear variaciones infinitas.
Fractales y diseños recursivos
Los fractales son patrones recursivos que se repiten a distintas escalas. Son formas autosimilares, es decir, se ven iguales a cualquier escala y pueden tener un perímetro infinito dentro de un área finita. Los fractales son ideales para aprender ideas de recursividad. Un fractal famoso en turtle graphics es el triángulo de Sierpiński, una serie de triángulos pequeños que forman un triángulo mayor.
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()

Dibujar un triángulo de Sierpiński con turtle graphics. Imagen del autor
Dibujos interactivos
También puedes controlar los movimientos de la tortuga con el teclado o el ratón, lo que crea una experiencia aún más dinámica. Por ejemplo, puedes crear un Etch-A-Sketch digital en el que controles la tortuga con las flechas para dibujar en la pantalla. Puedes ampliar el siguiente código añadiendo opciones para cambiar colores o limpiar la pantalla.
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()
Diseños creativos
Turtle graphics no se limita a formas y patrones. Combinando bucles, recursión y condicionales puedes crear diseños únicos y muy vistosos. Con algo de práctica, podrás hacer creaciones artísticas como mandalas o formas abstractas. En este ejemplo, la tortuga dibuja un mandala de colores cambiando continuamente de dirección y color.
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()

Dibujar un mandala con turtle graphics. Imagen del autor
Consejos para empezar con turtle graphics
Aquí tienes algunos consejos para sacarle el máximo partido a turtle graphics en Python:
- Empieza con formas simples: Dibuja figuras básicas como cuadrados y círculos. Te ayudará a entender cómo funcionan los movimientos de la tortuga y te dará una base sólida para diseños más complejos.
-
Prueba con colores y grosor del lápiz: Turtle graphics te permite cambiar el grosor del lápiz, la velocidad y el color. Usa
turtle.pensize(),turtle.speed()yturtle.color()para hacer tus dibujos más interesantes.
- Usa bucles y funciones: Los bucles se usan para crear patrones repetitivos de forma eficiente. En lugar de escribir a mano el mismo código varias veces, usa bucles y funciones para automatizar acciones repetitivas y crear diseños complejos con menos líneas de código.
- Explora la documentación: El módulo turtle tiene muchos más comandos además de los movimientos básicos. Sumérgete en la documentación para descubrir funciones como shapes, stamps y técnicas de dibujo más avanzadas. ¡Te sorprenderá lo que puedes crear!
Conclusión
Más allá de las figuras que hemos creado en este artículo —como cuadrados, estrellas, espirales y el triángulo de Sierpiński—, turtle graphics te permite experimentar con muchas otras, como pentágonos o patrones florales complejos. A medida que ganes confianza, turtle graphics crece contigo y te permite abordar proyectos cada vez más desafiantes. Sigue probando y explorando ideas nuevas. Y no olvides dar el siguiente paso con nuestro curso de introducción a Python para seguir puliendo tus habilidades.
Redactor técnico especializado en IA, ML y ciencia de datos, que hace que las ideas complejas sean claras y accesibles.
Preguntas frecuentes sobre Python Turtle Graphics
¿Qué es turtle graphics en Python?
Turtle Graphics es un módulo de Python que te permite crear gráficos y animaciones controlando una "tortuga" virtual en la pantalla. Ofrece una forma atractiva de aprender a programar dibujando formas y patrones.
¿Cómo empiezo con turtle graphics en Python?
Para empezar, importa el módulo turtle en Python con import turtle. A partir de ahí, puedes usar comandos como turtle.forward(), turtle.right() y turtle.circle() para controlar los movimientos de la tortuga y crear dibujos.
¿Qué tipos de proyectos en Python puedo crear con turtle graphics?
Puedes crear una gran variedad de proyectos: desde formas simples como cuadrados y círculos hasta patrones geométricos más complejos, animaciones, fractales e incluso juegos o dibujos interactivos.
¿Puedo crear proyectos interactivos en Python con turtle graphics?
Sí, Turtle Graphics se puede usar para crear proyectos interactivos. Por ejemplo, puedes usar el teclado para controlar los movimientos de la tortuga y dibujar de forma dinámica, como en un Etch-A-Sketch digital.
¿Cómo puedo mejorar mis proyectos de turtle graphics en Python?
Empieza con formas simples y ve explorando diseños más complejos. Usa bucles y funciones para crear patrones repetitivos, experimenta con los grosores del lápiz y los colores, y consulta la documentación del módulo turtle para descubrir comandos y técnicas avanzadas.


