Commandes personnalisées

Définition d'une nouvelle commande

Dans le dernier chapitre, vous avez appris comment programmer le serpent pour dessiner un carré. Il s'agit d'une tâche typique et qui se suffit à elle-même, raison pour laquelle il est bon de rassembler le code nécessaire à son exécution dans une nouvelle commande square. Pour définir une nouvelle commande, on utilise mot-clé def comme suit :

Définition de la commande .

Définition de la commande square.

Lorsque l'ordinateur va rencontrer ces lignes de code, il ne va rien se produire de très spectaculaire car l'ordinateur ne va pas encore exécuter la commande en question. ****Il va se contenter de noter quelque part qu'il connait la nouvelle commande square et saura que faire lorsqu'il rencontrera un appel square() plus tard dans le code.

La définition d'une nouvelle commande est donc constituée d'une ligne d'en-tête avec def et le nom de la commande suivi d'une paire de parenthèses et d'un deux-points.

Règles pour le nom d'une commande

Attention : le nom d'une fonction doit obéir à des règles très strictes.

Utilisation de la commande

Une fois que la fonction a été définie, elle peut être appelée plusieurs fois au sein du programme principal comme le montre l'exemple ci-dessous qui dessine deux carrés à des endroits différents.

from oxosnake import * 

def square():
    repeat 4:
        forward(3)
        right(90)

makeSnake()
setSpeed(90)
setPos(0, 7)
square()
setPos(4, 7)
square()

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/e06b5b6a-78d3-42f5-93c9-71d285daef06/Untitled.png

Travailler avec des couleurs

Il est possible de modifier la couleur de la trace laissée par le serpent. Pour cela, il suffit d'utiliser la commande setPenColor(color)color peut être une des couleurs prédéfinies dans le module oxosnake : RED, GREEN, BLUE, BLACK, WHITE, YELLOW, CYAN, MAGENTA.

Il est également possible de changer la couleur de fond (couleur de la feuille) sur laquelle le serpent dessine avec la commande setBgColor(color).