Licence CC BY-NC-SA

À la découverte de turtle

Un module Python qui en a sous la caparace

Dernière mise à jour :
Auteur :
Catégorie :

Adapté de la fameuse Tortue de Logo, un langage informatique en partie destiné à apprendre en créant, le module turtle de Python offre un vaste espace de jeu avec l'utilisation simple et élargie d'une interface graphique !

À travers ce tutoriel, nous allons découvrir les fonctionnalités de turtle tout en pratiquant. Ce tutoriel est ouvert à tous, et peut être un excellent entraînement pour les programmeurs peu expérimentés en particulier. Des bases en Python, que vous pouvez acquérir avec ce tutoriel par exemple, sont nécessaires pour être à l'aise.

Ce module peut être utilisé de façon procédurale (en manipulant des fonctions) ou orientée objet (en manipulant des objets et des méthodes). Nous l'explorerons avec la première approche, mais nous nous intéresserons aussi aux possibilités qu'offrent la seconde par rapport à la première dans une dernière partie.

Avant de commencer, il convient que vous ayez une version de Python installée ainsi que le module tkinter (Tkinter pour Python 2). En effet, turtle repose en partie sur ce dernier. Si vous avez une version de Python, cela doit être bon puisque Tcl/Tk est installé par défaut avec.

Il y a quelques petites différences concernant le module selon que vous utilisiez Python 2 ou Python 3, c'est pourquoi il faut que vous choisissiez la documentation adaptée à votre version. Pour ma part j'utiliserai la version 3.4 mais généralement le code sera le même que pour une version 2.

Durant la lecture de ce tutoriel, je vous invite à être actif, c'est-à-dire à tester les fonctions décrites , à bidouiller, donc à ne pas vous contentez de lire. Le meilleur moyen de comprendre et d'apprendre est d'essayer par soi-même ! De même, n'hésitez pas à vous reporter à la documentation officielle correspondant à votre version de Python pour aller chercher vous mêmes des informations sur les fonctions. Un programmeur doit être capable d'aller chercher les renseignements dont il a besoin.

Au cours des exercices proposés, il est possible de bloquer. Dès lors, pour progresser, il faut faire l'effort de se creuser la tête plutôt que de copier-coller la correction, et il ne faut surtout pas hésiter à s'aider du cours ou à demander de l'aide sur les forums.

Enfin, pour les corrections, il est tout à fait possible que votre code ne soit pas semblable au mien. Pas d'inquiétude : le principal est qu'il soit fonctionnel.

Cela étant dit, passons aux choses sérieuses ! :D

Configurer la fenêtre

  1. Les réglages
  2. TP : Une fenêtre personnalisée

Tracer et dessiner

  1. Se repérer et tracer
  2. Dessiner des figures simples
  3. Dessiner des choses plus complexes
  4. TP : De bien jolis dessins

Colorier

  1. Couleur de tracé et de remplissage
  2. Notre fonction point
  3. Notre remplissage personnalisé
  4. TP : Atelier coloriage

Interagir avec l'utilisateur

  1. Les saisies de l'utilisateur
  2. Les événements
  3. L'écriture à l'écran
  4. L'utilisation de timers
  5. TP : Le jeu des allumettes

Aller plus loin dans les configurations

  1. Paramétrer le repère
  2. Paramétrer le crayon
  3. Paramétrer encore et toujours
  4. TP : Configuration avancée

S'amuser avec plusieurs tortues

  1. La classe Screen
  2. La classe Turtle
  3. TP : Clique la tortue !


Cette présentation pratique et assez complète de turtle est finie. Comme vous avez pu le voir, c'est un module plutôt facile à prendre en main et plein de possibilités.

Maintenant, vous savez réaliser des dessins, jeux, etc… avec turtle ! Je vous invite à partager vos créations sur ce sujet. N'hésitez pas non plus à y proposer vos propres exercices !

Si vous souhaitez renforcer vos connaissances ou en apprendre plus, car bien que nous ayons vu beaucoup de choses, nous n'avons par exemple pas étudié les classes Shape et Vec2D ou encore les fonctions delay et tracer, vous pouvez vous référer aux liens suivants (liste non exhaustive) :

De plus, il existe le module turtledemo qui regroupe de nombreux exemples d'utilisation (les sources de ceux-ci sont dans RepertoireDeVotrePython/Lib/turtledemo/).

Enfin, vous pouvez aller encore plus loin avec les interfaces graphiques en Python en utilisant des bibliothèques spécifiques. Par exemple, il existe Pygame pour faire des jeux et le module tkinter qui est plus orienté vers le logiciel.

À bientôt ! :)

Merci à yoch et à Arius pour leurs retours. Merci à Grimur pour sa suggestion d'exercice sur le flocon de Von Koch. Merci à nohar pour la validation.

3 commentaires

Staff

Je l'ai déjà dit en privé, je le répète ici. Merci et bravo pour ce joli tuto qui tombe à pic. On a besoin de ce genre de contenus sur ZdS !

I was a llama before it was cool

+6 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte