宇宙ミッション管理システムの完成
このチャレンジでは、さまざまなデータ構造を使用して宇宙ミッションを管理する、作成途中の Python スクリプトを完成させます。
タスク
/home/labex/project ディレクトリにある mission_control.py ファイルを開きます。(WebIDE の使用を推奨します)
mission_control.py 内の以下の 4 つの関数を完成させてください:
add_mission(missions, mission_details, name, details)
update_mission(mission_details, name, key, value)
display_missions(missions, mission_details)
list_astronauts(mission_details)
- スクリプトを実行し、ミッションの追加、更新、全ミッションの表示、宇宙飛行士のリスト表示を行って、機能が正しく動作するかテストしてください。
要件
- 適切なデータ構造を使用して
mission_control.py の関数を実装してください:
- ミッション名の保存には
missions リストを使用する
- 各ミッションの詳細情報の保存には
mission_details 辞書を使用する
list_astronauts 関数では、重複のない宇宙飛行士名を保存するために集合(set)を使用する
add_mission 関数は、新しいミッションを missions リストと mission_details 辞書の両方に追加するようにしてください。
update_mission 関数は、指定されたミッションの特定の詳細情報を変更できるようにしてください。
display_missions 関数は、すべてのミッションとその詳細を出力してください。
list_astronauts 関数は、全ミッションを通じて重複のないすべての宇宙飛行士の集合を返すようにしてください。
実行例
mission_control.py を完成させて実行すると、以下のようなインタラクションになります:
$ 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!