Introduction
Bienvenue dans ce défi sur les structures de données Python de la LabEx Space Academy ! En tant que nouvelle recrue, vous allez devoir finaliser un système simple de gestion de missions spatiales. Ce défi vous permettra de mettre en pratique l'utilisation des structures de données Python telles que les listes, les dictionnaires et les ensembles (sets).
Compléter le système de gestion de missions spatiales
Dans ce défi, vous allez compléter un script Python partiellement écrit qui gère des missions spatiales en utilisant différentes structures de données.
Tâches
- Ouvrez le fichier
mission_control.pysitué dans le répertoire/home/labex/project. (Il est recommandé d'utiliser l'IDE Web) - Complétez les quatre fonctions suivantes dans
mission_control.py:add_mission(missions, mission_details, name, details)update_mission(mission_details, name, key, value)display_missions(missions, mission_details)list_astronauts(mission_details)
- Exécutez le script et testez les fonctionnalités en ajoutant une mission, en la mettant à jour, en affichant toutes les missions et en listant les astronautes.
Exigences
- Complétez les fonctions dans
mission_control.pyen utilisant les structures de données appropriées :- Utilisez la liste
missionspour stocker les noms des missions. - Utilisez le dictionnaire
mission_detailspour stocker les détails de chaque mission. - Utilisez un ensemble (
set) pour stocker les noms uniques des astronautes dans la fonctionlist_astronauts.
- Utilisez la liste
- Assurez-vous que la fonction
add_missionajoute la nouvelle mission à la fois dans la listemissionset dans le dictionnairemission_details. - La fonction
update_missiondoit modifier le détail spécifié pour la mission donnée. - La fonction
display_missionsdoit afficher toutes les missions ainsi que leurs détails respectifs. - La fonction
list_astronautsdoit renvoyer un ensemble de tous les astronautes uniques participant à l'ensemble des missions.
Exemple
Une fois le fichier mission_control.py complété et exécuté, l'interaction devrait ressembler à ceci :
$ python /home/labex/project/mission_control.py
Space Mission Management System
1. Add Mission
2. Update Mission
3. Display Missions
4. List Astronauts
5. Exit
Enter your choice: 1
Enter mission name: Mars Expedition
Enter destination: Mars
Enter launch date: 2030-01-01
Enter crew members (comma-separated): John Doe, Jane Smith
Mission added successfully!
Enter your choice: 3
All Missions:
1. Mars Expedition
Destination: Mars
Launch Date: 2030-01-01
Crew: John Doe, Jane Smith
Enter your choice: 4
All Astronauts:
- John Doe
- Jane Smith
Enter your choice: 5
Exiting Space Mission Management System. Goodbye!
Résumé
Dans ce défi, vous avez complété un script Python gérant des missions spatiales à l'aide de diverses structures de données. Vous vous êtes exercé à utiliser des listes pour stocker les noms des missions, des dictionnaires pour les détails des missions et des ensembles pour assurer le suivi des astronautes uniques. Cet exercice a permis de renforcer votre compréhension des structures de données Python et de leurs applications concrètes dans la gestion de données complexes.



