Fiche de TP – Programmation Python BTS 2EII
TP : Gestion d’un club sportif universitaire en Python
Objectif : mobiliser les instructions, boucles, fonctions et structures de données.
1. Contexte du problème
Le service des activités sportives de l’université souhaite développer une petite application pour
gérer les informations relatives à ses adhérents et leurs activités sportives.
Le programme devra permettre :
— d’enregistrer les membres du club ;
— d’afficher la liste complète des adhérents ;
— de calculer quelques statistiques globales ;
— d’effectuer des recherches et des filtrages.
Chaque adhérent est représenté par un enregistrement (ici un dictionnaire) contenant :
{"nom": "Ali", "age": 20, "sport": "Football", "niveau": "Débutant"}
2. Objectif général
Écrire un programme Python structuré qui permet de gérer une base simplifiée d’adhérents à un
club sportif universitaire.
3. Travail à réaliser
Étape 1 – Saisie et stockage des adhérents
— Créer une liste membres = [ ].
— Tant que l’utilisateur ne saisit pas "fin", demander les informations suivantes :
— nom,
— âge,
— sport pratiqué,
— niveau (Débutant / Intermédiaire / Avancé).
— Ajouter chaque adhérent dans la liste sous forme d’un dictionnaire.
1 # Exemple
2 { " nom " : " Sara " , " age " : 22 , " sport ": " Tennis " , " niveau ": " Avanc é "}
Consigne : afficher un message de confirmation après chaque ajout.
Étape 2 – Affichage des informations
Écrire une fonction :
1 def afficher_membres ( liste ) :
2 ...
Elle doit afficher proprement le contenu de la liste sous forme tabulaire, comme ci-dessous :
Nom Âge Sport Niveau
------------------------------------
Ali 20 Football Débutant
Sara 22 Tennis Avancé
Astuce : utilisez le formatage des chaînes avec f-strings pour aligner les colonnes.
1
Fiche de TP – Programmation Python CGE / CPGE
Étape 3 – Statistiques globales
Créer une fonction statistiques(liste) qui :
— calcule la moyenne d’âge des adhérents ;
— affiche le nombre d’adhérents par sport ;
— identifie le plus jeune et le plus âgé.
Exemple d’exécution :
Moyenne d’âge : 21.3 ans
Nombre d’adhérents par sport :
- Football : 3
- Tennis : 2
- Natation : 1
Le plus jeune : Ali (20 ans)
Le plus âgé : Samira (25 ans)
Étape 4 – Recherche et filtrage
Écrire deux fonctions :
— rechercher(liste, sport) : affiche tous les adhérents pratiquant un sport donné ;
— filtrerNiveau(liste, niveau) : affiche les adhérents d’un certain niveau.
Exemple d’exécution :
>>> rechercher(membres, "Tennis")
Sara - 22 ans - Avancé
Amine - 19 ans - Intermédiaire
Étape 5 – Menu principal
Mettre en place un menu interactif permettant de choisir les actions :
===== MENU PRINCIPAL =====
1. Ajouter un adhérent
2. Afficher tous les adhérents
3. Afficher les statistiques
4. Rechercher par sport
5. Filtrer par niveau
6. Quitter
==========================
Utilisez une boucle while True: avec des if / elif / else pour contrôler les choix de l’utili-
sateur.
Exemple d’exécution complète :
===== MENU PRINCIPAL =====
1. Ajouter un adhérent
2. Afficher tous les adhérents
3. Afficher les statistiques
4. Rechercher par sport
2
Fiche de TP – Programmation Python CGE / CPGE
5. Filtrer par niveau
6. Quitter
==========================
Votre choix : 1
Nom : Sara
Âge : 22
Sport : Tennis
Niveau : Avancé
--> Adhérent ajouté avec succès !
Votre choix : 2
Nom Âge Sport Niveau
------------------------------------
Sara 22 Tennis Avancé
4. Extension (optionnelle)
Pour les étudiants avancés :
— Enregistrer la liste des adhérents dans un fichier texte ou un fichier JSON.
— Trier les adhérents selon l’âge ou le nom.
— Ajouter une fonction pour supprimer un adhérent.