Accéder au contenu principal

Python Turtle Graphics : Une façon amusante d'apprendre les bases

Découvrez comment créer des graphiques simples ou complexes avec le module turtle de Python. Apprenez les commandes essentielles et créez des projets interactifs qui donnent vie à vos idées. Explorez les fractales, les animations et les conceptions créatives tout en maîtrisant les bases de Python.
Actualisé 14 févr. 2025  · 7 min de lecture

Les graphiques de tortues constituent l'une des approches les plus amusantes de l'apprentissage de Python. Il s'agit d'un simple script Python qui vous permet de créer des graphiques et des animations artistiques en "commandant" à une tortue de se déplacer à l'écran. Turtle graphics, qui était à l'origine destiné à enseigner la programmation aux jeunes apprenants, a gagné en popularité en tant que moyen pour les débutants d'acquérir une expérience pratique des idées de codage.

Python vous permet de construire des formes simples ou des motifs géométriques sophistiqués tout en apprenant les principes fondamentaux de Python tels que les boucles, les fonctions et les conditionnelles. Que vous soyez novice en programmation ou que vous souhaitiez utiliser vos compétences pour faire quelque chose de créatif, turtle graphics est là pour vous aider. 

Dans cet article, nous vous présenterons les bases du graphisme des tortues et vous guiderons dans la création de quelques projets passionnants. Nous jetterons les bases pour explorer des motifs plus complexes, du simple carré à la spirale complexe. En plus de jouer avec les graphiques de tortue, notre cours d'introduction à Python est un bon cours complémentaire pour vous aider à continuer à améliorer vos compétences. 

Qu'est-ce que Turtle Graphics en Python ?

Turtle Graphics est un module Python qui vous permet de dessiner et d'animer en contrôlant une "tortue" virtuelle à l'écran. Il offre un moyen intuitif et amusant d'interagir avec le code, en vous permettant de donner à la tortue des ordres tels que "avancer", "tourner à gauche" ou "dessiner un cercle" et de voir sa réponse en temps réel.

La "tortue" de Turtle Graphics est un curseur ou un stylo qui se déplace sur l'écran en fonction de vos commandes. Au fur et à mesure qu'il avance, il peut laisser des traces, créant des lignes, des formes ou des dessins plus élaborés en réponse à vos ordres. L'idée est que le retour visuel facilite l'apprentissage de principes de programmation élémentaires mais importants. En particulier, vous pouvez vous familiariser avec les boucles (pour répéter des formes), les fonctions (pour créer du code réutilisable) et les conditionnelles (pour décider de ce que la tortue doit faire ensuite). Par exemple, si nous voulons dessiner une étoile, nous pouvons utiliser une boucle pour répéter quatre fois les mouvements de la tortue vers l'avant et vers l'arrière. Notez que, since turtle graphics fait partie de la bibliothèque standard de Python, aucune installation supplémentaire n'est nécessaire.

import turtle 

star = Turtle.Turtle() 

star.right(75) 
star.forward(100) 

for i in range(4): 
	star.right(144) 
	star.forward(100) 
	
turtle.done() 

étoile avec graphisme de tortue

Dessiner une étoile avec un graphisme de tortue. Image par l'auteur

Utilisations typiques de Turtle Graphics

Dessiner des formes et des motifs à l'aide de graphiques de tortues est assez amusant et a de nombreuses utilisations dans le monde réel, en particulier dans le domaine de l'enseignement. Voici quelques applications typiques :

Enseigner les concepts d'introduction à la programmation

Turtle graphics est un outil populaire pour enseigner les concepts de base de la programmation dans les tutoriels et les salles de classe. Les débutants ont moins peur d'apprendre à programmer grâce à une méthode simple et visible. Nous verrons plus loin quelques exemples plus détaillés.

Création de dessins et d'animations

Avec les graphiques de tortue, vous pouvez créer des motifs et des animations compliqués, ou des formes simples comme des carrés et des cercles. Vous pouvez commencer par des modèles de base et passer à des modèles plus complexes. Vous pouvez également personnaliser le mouvement de la tortue, sa direction, l'épaisseur du trait et sa couleur.

Conception de jeux ou de projets interactifs

Les graphiques de tortue peuvent être utilisés pour créer des projets ou des jeux interactifs simples. Vous pouvez créer des jeux simples, comme un labyrinthe ou un jeu de Pong basique, en combinant les commandes de la tortue avec des entrées humaines (comme des clics de souris ou des entrées de clavier).

Visualisation des algorithmes

Il est peut-être surprenant de constater que les graphiques de tortue permettent de visualiser les algorithmes. Vous pouvez l'utiliser pour démontrer des algorithmes de tri, des fractales ou des motifs récursifs.

Commandes Python courantes pour Turtle Graphics 

Familiarisons-nous avec quelques commandes graphiques de base de la tortue pour vous aider à créer vos premiers dessins. Nous commencerons par les opérations les plus simples pour contrôler les mouvements et les actions de dessin de la tortue.

1. Importer une tortue  

Avant de dessiner, vous devez importer le module graphique turtle à l'aide de cette commande. Il vous permet d'accéder à toutes les fonctions de la tortue.

import turtle

2. turtle.forward()

Cette commande fait avancer la tortue d'un nombre d'unités spécifié, dans ce cas, 100 unités. La tortue dessine une ligne en se déplaçant.

turtle.forward(100)

3. tortue.droite()

La tortue tourne de 90 degrés vers la droite mais ne bouge pas, ce qui est utile pour changer de direction avant le mouvement suivant.

turtle.right(90)

4. tortue. cercle()

Cette commande dessine un cercle d'un rayon de 50 unités. Vous pouvez modifier le rayon pour dessiner des cercles plus grands ou plus petits.

turtle.circle(50)

5. turtle.penup()

Cela soulève le stylo, ce qui signifie que la tortue se déplace sans rien dessiner. Il est utile de repositionner la tortue sans laisser de traces.

turtle.penup()

6. turtle.pendown()

Ceci abaisse le stylo, permettant à la tortue de recommencer à dessiner après une commande penup().

turtle.pendown()

Exemples de projets Python sur les graphiques de la tortue

Passons maintenant à de vrais exemples de graphiques de tortues Python que vous pouvez essayer par vous-même. Il suffit de copier et de coller le code fourni pour commencer, puis de le modifier pour l'adapter à votre propre esthétique.

Je vous recommande de commencer par des formes simples comme les carrés et les triangles. Ces formes impliquent de déplacer la tortue vers l'avant et de la tourner selon des angles spécifiques.

import turtle

t = turtle.Turtle()

for _ in range(4):
    t.forward(100)
    t.right(90)

turtle.done()

carré avec graphisme de tortue

Dessiner un carré avec des graphiques de tortue. Image par l'auteur

Des motifs géométriques peuvent être créés en répétant des formes simples avec des boucles. Vous pouvez générer des motifs tels que des spirales ou des étoiles à l'aide de boucles et de fonctions. Ces motifs montrent comment la répétition et la symétrie créent de la complexité à partir de la simplicité.

import turtle

t = turtle.Turtle()

for _ in range(36):
    for _ in range(5):
        t.forward(100)
        t.right(144)
    t.right(10)

turtle.done()

Motif d'étoiles en spirale avec graphiques de tortues

Dessin d'un motif d'étoile en spirale avec des graphiques de tortue. Image par l'auteur

Il s'agit ici d'expérimenter le nombre de boucles et d'angles pour voir comment les motifs évoluent. En ajustant les paramètres, vous pouvez créer des variations infinies.

Fractales et motifs récursifs  

Les fractales sont des motifs récursifs qui se répètent à différentes échelles. Le site est une forme autosimilaire, ce qui signifie qu'il a la même apparence quelle que soit l'échelle et qu'il peut avoir un périmètre infini à l'intérieur d'une zone finie. Les fractales sont un bon moyen d'apprendre les notions de récursivité. Le triangle de Sierpiński est une fractale célèbre dans les graphiques de tortues. triangle de SierpińskiIl s'agit d'une série de triangles plus petits qui forment un triangle plus grand.

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()

Triangle de Sierpinksi avec graphisme de tortue

Dessiner un triangle de Sierpinksi avec des graphiques de tortue. Image par l'auteur

Dessins interactifs

Vous pouvez également contrôler les mouvements de la tortue à l'aide du clavier ou de la souris, ce qui rend l'expérience encore plus dynamique. Vous pouvez créer des projets tels qu'un Etch-A-Sketch numérique, où vous contrôlez la tortue à l'aide de touches fléchées pour dessiner sur l'écran. Vous pouvez également améliorer le code suivant en ajoutant des options pour changer les couleurs ou effacer l'écran.

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()

Modèles créatifs

Le graphisme des tortues ne se limite pas aux formes et aux motifs. La combinaison de boucles, de récursions et de conditionnelles permet de créer des modèles uniques et magnifiques. Des créations artistiques telles que des mandalas ou des formes abstraites sont réalisables avec un peu d'entraînement. Dans cet exemple, la tortue dessine un motif de mandala coloré en changeant continuellement de direction et de couleur.

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()

mandala avec graphiques de tortues

Dessin d'un mandala avec des motifs de tortues. Image par l'auteur

Conseils pour débuter avec Turtle Graphics

Voici quelques conseils pour vous aider à utiliser au mieux le graphisme de la tortue Python :

  • Commencez par des formes simples: Dessinez des formes de base comme des carrés et des cercles. Cela vous aidera à comprendre le fonctionnement des mouvements de la tortue et vous donnera une base solide pour des dessins plus complexes.
  • Expérimentez avec les couleurs et la taille du stylo: Les graphiques de la tortue vous permettent de modifier la taille, la vitesse et la couleur du stylo de la tortue. Utilisez Turtle. pensize(), Turtle. Speed(), et Turtle. Color() pour rendre vos dessins plus intéressants.

  • Utilisez des boucles et des fonctions: Les boucles sont utilisées pour créer efficacement des motifs répétitifs. Au lieu d'écrire manuellement du code pour dessiner plusieurs fois les mêmes formes, utilisez des boucles et des fonctions pour automatiser les actions répétitives et réaliser des dessins complexes avec moins de lignes de code.
  • Explorez la documentation: Le module tortue dispose de nombreuses commandes au-delà des mouvements de base. Plongez dans la documentation pour découvrir des fonctionnalités telles que les formes, les tampons et des techniques de dessin plus avancées. Vous serez surpris de ce que vous pouvez créer !

Conclusion

Outre les formes que nous avons créées dans cet article (carrés, étoiles, spirales et triangle de Sierpiński), les graphiques de tortue vous permettent d'en expérimenter d'autres, comme les pentagones ou les motifs floraux complexes. Au fur et à mesure que vous gagnez en confiance, le graphisme de la tortue grandit avec vous, vous permettant de vous attaquer à des projets de plus en plus difficiles. Continuez à expérimenter et à essayer de nouvelles idées. N'oubliez pas non plus de passer à l'étape suivante en essayant notre cours d'introduction à Python pour continuer à améliorer vos compétences !


Oluseye Jeremiah's photo
Author
Oluseye Jeremiah
LinkedIn

Rédacteur technique spécialisé dans l'IA, la ML et la science des données, rendant les idées complexes claires et accessibles.

FAQ sur les graphiques de la tortue Python

Qu'est-ce que le graphisme de tortue en Python ?

Turtle Graphics est un module Python qui vous permet de créer des graphiques et des animations en contrôlant une "tortue" virtuelle à l'écran. Il constitue un moyen attrayant d'apprendre la programmation en dessinant des formes et des motifs.

Comment commencer à utiliser les graphiques de tortue en Python ?

Pour commencer, vous devez importer le module turtle dans Python à l'aide de import turtle. À partir de là, vous pouvez utiliser des commandes telles que turtle.forward(), turtle.right(), et turtle.circle() pour contrôler les mouvements de la tortue et créer des dessins.

Quels types de projets Python puis-je créer avec turtle graphics ?

Vous pouvez créer un large éventail de projets, des formes simples comme les carrés et les cercles aux motifs géométriques plus complexes, en passant par les animations, les fractales et même les jeux ou les dessins interactifs.

Puis-je créer des projets interactifs en Python avec des graphiques de tortue ?

Oui, Turtle Graphics peut être utilisé pour créer des projets interactifs. Par exemple, vous pouvez utiliser le clavier pour contrôler les mouvements de la tortue et dessiner de manière dynamique, à la manière d'un Etch-A-Sketch numérique.

Comment puis-je améliorer mes projets Python de graphisme de tortue ?

Commencez par des formes simples et explorez progressivement des motifs plus complexes. Utilisez des boucles et des fonctions pour créer des motifs répétitifs, expérimentez les tailles et les couleurs des stylos et reportez-vous à la documentation du module turtle pour découvrir des commandes et des techniques avancées.

Sujets

Apprenez Python avec DataCamp

cours

Introduction to Data Visualization with Matplotlib

4 hr
196.1K
Learn how to create, customize, and share data visualizations using Matplotlib.
Afficher les détailsRight Arrow
Commencer le cours
Voir plusRight Arrow
Apparenté

blog

Les 32 meilleures questions d'entretien sur AWS et leurs réponses pour 2024

Un guide complet pour explorer les questions d'entretien AWS de base, intermédiaires et avancées, ainsi que des questions basées sur des situations réelles. Il couvre tous les domaines, garantissant ainsi une stratégie de préparation bien équilibrée.
Zoumana Keita 's photo

Zoumana Keita

30 min

blog

2022-2023 Rapport annuel DataCamp Classrooms

À l'aube de la nouvelle année scolaire, DataCamp Classrooms est plus motivé que jamais pour démocratiser l'apprentissage des données, avec plus de 7 650 nouveaux Classrooms ajoutés au cours des 12 derniers mois.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 min

blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates a offert plus de 20k bourses d'études à nos partenaires à but non lucratif au deuxième trimestre 2023. Découvrez comment des apprenants défavorisés et assidus ont transformé ces opportunités en réussites professionnelles qui ont changé leur vie.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

blog

Célébration de Saghar Hazinyar : Une boursière de DataCamp Donates et une diplômée de Code to Inspire

Découvrez le parcours inspirant de Saghar Hazinyar, diplômée de Code to Inspire, qui a surmonté les défis en Afghanistan et s'est épanouie grâce à une bourse de DataCamp Donates.
Fereshteh Forough's photo

Fereshteh Forough

4 min

blog

Les 20 meilleures questions d'entretien pour les flocons de neige, à tous les niveaux

Vous êtes actuellement à la recherche d'un emploi qui utilise Snowflake ? Préparez-vous à répondre à ces 20 questions d'entretien sur le flocon de neige pour décrocher le poste !
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 min

blog

Nous avons fait don de bourses DataCamp Premium à un million de personnes, et ce n'est pas fini.

Réparties entre nos deux programmes d'impact social, DataCamp Classrooms et #DCDonates, les bourses offrent un accès illimité à tout ce que DataCamp Premium a à offrir.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

Voir plusVoir plus