Description : Un gestionnaire de base de données de Pokémon développé en Python. Ce projet permet de consulter, rechercher, filtrer un Pokédex via une interface interactive en console.
====================================================
_____ ____ _ ________ _____ ________ __
| __ \ / __ \| |/ / ____| __ \| ____\ \/ /
| |__) | | | | ' /| |__ | | | | |__ \ /
| ___/| | | | < | __| | | | | __| > <
| | | |__| | . \| |____| |__| | |____ / /\
|_| \____/|_|\_\______|_____/|______/_/ \_\
====================================================
MENU DU POKEDEX
0 - Quitter
1 - Lister tout
2 - Rechercher
3 - Ajouter un Pokémon
4 - Trier
5 - Statistiques
====================================================
Voici l'état d'avancement par rapport au cahier des charges initial :
- Structure de données : Tableau (50 Pokémon inclus par défaut) dans un fichier texte pour les sauvegardes.
- Affichage : Fonction de formatage propre pour chaque Pokémon
- Recherches avancées : Par numéro, nom, type, et statistiques
- Trie dynamique : Système de recherche par Minimum/Maximum sur les PV, Attaque, etc.
- Ajout Dynamique : Formulaire de création d'un nouveau Pokémon avec validation des données
- Persistance des informations : Sauvegarde et chargement automatique via un fichier
pokedex.txt - Sécurité : Gestion des erreurs de saisie (évite les crashs si l'utilisateur ne tape pas un chiffre)
Chaque Pokémon est stocké sous forme de liste avec l'organisation suivante :
| Indice | Information | Exemple |
|---|---|---|
| 0 | Numéro | 1 |
| 1 | Nom | "Bulbizarre" |
| 2 | Type 1 | "Plante" |
| 3 | Type 2 | "Poison" |
| 4 | PV | 45 |
| 5 | Attaque | 49 |
| 6 | Défense | 49 |
| 7 | Vitesse | 45 |
| 8 | Génération | 1 |
- GIT (pour installation en ligne de commande avec git clone)
- Un terminal python
- Cloner le dépôt :
git clone https://github.com/THE-lulu57/Pokedex.git
2a. Lancer le programme :
cd Pokedex
python pokedex.py2b. Ou executer pokedex.py dans votre terminal python (ex Thonny ou VS Code avec le module Python installé
- Le menu principal s'affichera et vous pourrez commencer à explorer votre Pokédex !
Ce programme utilise les fonctions sauvegarder() et charger() pour lire et écrire dans pokedex.txt. Vos nouveaux Pokémon sont donc conservés !
Grâce à la fonction demander_entier(), le programme ne plante jamais si vous entrez du texte à la place d'un nombre :
Le système de trie permet de trouver en un clin d'œil les Pokémon les plus puissants (ex: "Afficher tous les Pokémon ayant plus de 80 en Attaque"). Au lieu de créer 5 ou 6 fonctions différentes pour trier par PV, par Attaque ou par Défense, j'ai développé une fonction de trie universelle : Python
def trie(Pokemon, max_min, quoi, valeur):
Ce projet est développé dans un cadre éducatif (NSI). Par Lucas et Axel