lundi 24 novembre 2025

Apprendre les Listes avec Turtle Python.

 

1. Introduction

Le module turtle de Python permet de créer des graphiques et animations via un concept simple de "tortue graphique". L'utilisation des listes Python dans ce contexte permet de gérer dynamiquement les couleurs, positions, tailles, formes et d'automatiser des motifs complexes.

Objectifs

  • Maîtriser la création et manipulation de listes.

  • Utiliser des listes pour générer des dessins programmatiques.

  • Combiner boucles et listes pour créer des animations avancées.

2. Rappel des bases sur les listes

# Création d'une liste

fruits = ["pomme", "banane", "orange"]
nombres = [1, 2, 3, 4, 5]

# Accès aux éléments

print(fruits[0])   # 'pomme'
print(nombres[-1]) # 5

# Modification

fruits[1] = "kiwi"

# Ajouter / supprimer

fruits.append("mangue")
fruits.remove("orange")

# Parcourir

for fruit in fruits:
    print(fruit)

Points clés avancés

  • Slicing, index négatif, compréhension de liste.

  • Combinaison avec boucles et conditions.

3. Intégration des listes avec Turtle Python

3.1 Listes de couleurs

import turtle

t = turtle.Turtle()
couleurs = ["red", "green", "blue", "orange", "purple"]

for couleur in couleurs:
    t.color(couleur)
    t.forward(100)
    t.right(72)

Utilisation d'une liste pour appliquer dynamiquement les couleurs à chaque segment.

3.2 Listes de positions (coordonnées)


positions = [(0,0), (100,0), (100,100), (0,100)]
for x, y in positions:
    t.goto(x, y)

Chaque point de la liste est visité pour dessiner un polygone précis.

3.3 Listes de formes et tailles.

formes = ["turtle", "circle", "square"]
t.shapesize(2)
for f in formes:
    t.shape(f)
    t.stamp()
    t.forward(60)

Les formes sont extraites d'une liste et imprimées sur l'écran.

4. Combiner Listes et Boucles pour Motifs Complexes

import turtle

t = turtle.Turtle()
t.speed(0)
couleurs = ["red", "orange", "yellow", "green", "blue", "purple"]

for i in range(36):
    t.color(couleurs[i % len(couleurs)])
    t.circle(100)
    t.right(10)

Création d'un motif circulaire avec rotation et changement de couleur.

5. Exemple Avancé : Fleur Multicolore

import turtle

t = turtle.Turtle()
t.speed(0)
couleurs = ["red", "yellow", "blue", "green", "orange", "purple"]

for couleur in couleurs:
    t.color(couleur)
    for i in range(36):
        t.forward(100)
        t.right(170)
    t.right(60)

t.hideturtle()
turtle.done()

Combinaison de deux boucles imbriquées et d'une liste de couleurs pour générer un motif complexe et esthétique.

6. Concepts Avancés à Retenir

  • Indexation et slicing pour gérer les listes de manière dynamique.

  • Listes imbriquées pour coordonnées 2D ou 3D.

  • Compréhension de liste pour générer des séries de valeurs (ex. couleurs ou longueurs).

  • Combinaison listes + boucles pour automatiser des motifs répétitifs ou animations.

  • Utilisation de modulo (i % len(liste)) pour boucler sur des listes plus courtes que le nombre de répétitions.

7. Exercices Professionnels

  1. Créer un motif étoilé avec 8 branches et une liste de couleurs dynamique.

  2. Dessiner une spirale de carrés où chaque carré utilise une couleur de liste différente.

  3. Générer une grille 2D de cercles avec des tailles et couleurs stockées dans deux listes différentes.

  4. Combiner positions, couleurs et formes pour créer un logo abstrait.

8. Conclusion

L'association des listes Python et du module Turtle permet de créer des dessins et animations programmatiques complexes. La maîtrise de ces techniques est essentielle pour la programmation graphique, l'algorithmique visuelle et la création de projets interactifs.


Aucun commentaire:

Enregistrer un commentaire

Servomoteur avec Arduino.

  Qu’est-ce qu’un servo-moteur ? introduction. Un servo-moteur est un petit moteur capable de tourner avec précision dans un angle défini...