Le module pendu.py
Cette page ressource a pour but de t’apprendre comment utiliser le module pendu.py que l’on utilise lors de l’activité « Crée un pendu en webapp ».
Elle est constitué des parties suivantes :
Exemples de pendus
Voici quelques exemples de projets réalisés avec le module pendu.py :
- Un pendu ultra-basique
- Un pendu plus avancé (Udnep)
- Un pendu encore plus avancé (Link’s Word Fight)
Introduction et état de jeu
Introduction
Le module pendu.py donne accès à deux fonctions qui permettent d’interagir avec l’état de jeu du pendu : initialiser() et deviner().
Tu trouveras dans la partie suivante une explication de ce que font ces deux fonctions. Mais dans un premier temps, il est important de comprendre ce que l’on entend par « état de jeu ».
État de jeu
L’état de jeu est un dictionnaire qui décrit où est-ce que l’on en est dans la partie en cours : quel est le mot à deviner, quel mot doit-on afficher, quelles lettres ont déjà été testées, combien de vies il nous reste…
Plus précisément, voici toutes les informations que l’on peut trouver sur l’état de jeu :
- mot_a_deviner : le mot à deviner (par exemple, « speleologue »)
- mot_a_afficher : le mot à afficher (par exemple, « __e_eo_o__e » si on a déjà testé les lettres ‘e’ et ‘o’)
- lettres_testees : liste de toutes les lettres déjà testées par le joueur
- vies : nombre de vies restantes
- vies_precedentes : nombre de vies restantes au tour précédent
- victoire : c’est un booléen qui devient True si l’utilisateur a trouvé le mot. Par défaut, la valeur est False.
- defaite : c’est un booléen qui devient True si l’utilisateur n’a plus de vies. Par défaut, la valeur est False.
- input : le dernier input de l’utilisateur (c’est-à-dire la dernière lettre ou le dernier mot testé)
Les deux fonctions initialiser() et deviner() renvoient cet état de jeu. Il est donc possible de le stocker dans une variable pour avoir accès à toutes ces informations.
Par exemple, si on stocke l’état de jeu dans une variable « data », alors on peut simplement écrire data[« vies »] pour récupérer le nombre de vies restantes.