19. Idées

Les programmes de ce chapitre sont des idées sous construction, à développer et à placer à leur endroit approprié.

19.1. Méthodes Screen

Cet exemple de code affiche toutes les méthodes de la classe Screen. Nous constatons d’en avoir environs 26 méthodes.

19.2. État de la tortue

Voici quelques méthodes qui renvoient l’état actuel de la tortue.

19.3. Fonction shape()

Voici les 6 formes de la tortue.

La taille des 3 formes géométriques square, triangle et circle est de 20 pixels. Ces formes peuvent être utilisées dans des animations ou des jeux vidéos.

19.4. Fonction delay()

La fonction delay(d) permet de contrôler l’intervalle (exprimé en millisecondes) entre deux mises à jour (update) de l’écran (canevas).

19.5. Fonction tracer()

La fonction tracer(0/1) active ou désactive les animations des tortues. Lorsque le traceur est désactivé, vous devez utiliser la fonction update() pour mettre à jour le dessin sur l’écran.

La fonction tracer(n) contrôle la fréquence des mises à jour du dessin. Seulement les n-ièmes mises à jour régulières de l’écran seront vraiment effectuées. Cette fonction peut être utilisée pour accélérer le dessin de graphiques complexes. Lorsqu’appelée sans arguments, elle renvoie la valeur actuelle de n.

19.6. Fonction speed()

La vitesse de la tortue peut varier entre 1 et 1000. Une vitesse de 0 représente la vitesse maximum. La vitesse par défaut est 3.

19.7. Fonction heading()

Voici une visualisation de la direction de la tortue, angle exprimé par la fonction heading()

19.8. Animer un point

Animation en utilisant la fonction tracer(0) et update().

19.9. Le Zen de Python

Le Zen de Python est un ensemble de 19 principes qui influencent la conception du langage de programmation Python, et sont utiles pour comprendre et utiliser le langage.

Il est aussi inclus comme Easter egg dans Python, et apparait quand on tape la commande import this.

19.10. Mots-clés

Ce module contient la liste de tous des mots-clés de Python. Le nombre des mots-clés est relativement limité. Nous en avons seulement une trentaine. Ces mots-clés concernent :

  • les opérateurs logiques : and, or, not

  • les boucles : for, in, while, break, continue

  • l’exécution conditionnelle : if, elif, else

  • les fonctions : def, return, lambda

  • l’importation : import, from

  • les classes : class

  • les variables : global

Les mots-clés que nous n’avons pas encore vus sont :
as, assert, del, except, exec, finally, is, pass, raise, try, with, yield

19.11. Expression rationnelle

Une expression rationnelle (regular expression ou RE) spécifie un ensemble de chaînes de caractères qui lui correspondent ; les fonctions de ce module vous permettent de vérifier si une chaîne particulière correspond à une expression rationnelle donnée (ou si une expression rationnelle donnée correspond à une chaîne particulière, ce qui revient à la même chose).

19.12. Chercher un élément

Ce programme crée une liste avec 100 entiers aléatoires.

L’expression x in liste retourne une valeur booléenne qui indique si x fait partie de la liste.

Ce programme vérifie si une valeur x se trouve dans la liste a.

19.13. Trié ou pas ?

La fonction is_sorted() vérifie si une liste est triée.

19.14. Recherche binaire

Voici comment faire une recherche binaire dans une liste triée.

19.15. Ordre du tri

Quel est la somme de 1 + 2 + 3 + … n ?
Graphiquement ceci nous donne la surface d’un triangle. Si nous affichons

  • x sur la première ligne

  • xx sur la deuxième ligne

  • n fois x sur la dernière ligne

la réponse à la formule est la somme des x. Nous pouvons ajouter un triangle identique (cette fois dessiné avec des traits (-)), ce qui nous donne un rectangle de taille (n) * (n+1). La taille du triangle est donc (n) * (n+1) / 2.

19.16. Snow Crash

Le Samouraï virtuel (titre anglais : Snow Crash) est un roman de Neal Stephenson, paru en 1992, se déroulant dans un univers futuriste parfois qualifié de cyberpunk ou, plus précisément, de postcyberpunk.

Snow crash est un virus transmis de façon visuelle et qui s’attaquerait directement au « système opératoire » du cerveau des programmeurs par affichage sur écran de symboles apparemment indéchiffrables (d’où le titre original Snow crash).

Avertissement

Ne cliquez pas sur Exécuter ! Ce code sert uniquement d’illustration ! Les risques pour votre cerveau seront imprévisibles.

Danger

Ne cliquez pas sur Exécuter ! Ce code sert uniquement d’illustration ! Ce code illustre une version du virus Snow crash avec des pixels en couleurs.

19.17. Tortue par pixel

Est-ce que le programme est beaucoup ralenti si nous créons une nouvelle tortue pour chaque pixel ?

Effectivement avec 600 tortues, nous occupons beaucoup plus d’espace en mémoire, avec les paramètre propre à chaque tortue (shape, color, width, speed, etc.)

19.18. Hypnose

19.19. Spiral

19.20. Le coronavirus

Le nom « coronavirus » vient du latin et signifie « virus à couronne ». Son apparence sous un microscope électronique montre une frange de grandes projections bulbeuses qui évoquent une couronne solaire.

Dans la fonction corona() les paramètres sont :

  • la distance entre projections a

  • la longueur de la projection d

  • le nombre de projections n

Exercice 1

Ajoutez 3 autres virus avec d’autres valeurs pour a, d et n.

19.22. Directives

Astuce

This is a tip

Avertissement

This is a warning

Remarque

This is a note

Attention

This is attention

Important

This is important

Exercice 3

This is exercise.

Exercice 4

This is an exercise.
This is an exercise.

Exercice 5

This is an exercise.
This is an exercise.
This is an exercise.

Exercice

This is an exercice.

Exercice

This is an exercice of class tip.

Exercice

This is an exercice of class note.