宇宙飛行士の名札プロセッサの作成

PythonBeginner
オンラインで実践に進む

はじめに

LabEx スペースアカデミーの新入生として、あなたは宇宙飛行士の名札を処理するシンプルなプログラムの作成を任されました。このチャレンジでは、Python における文字列操作(String Manipulation)の能力をテストします。これは、さまざまな宇宙ミッションのシナリオでテキストデータを扱うために不可欠なスキルです。

これは「チャレンジ」です。ガイド付きの実験(Lab)とは異なり、学習ステップに従うのではなく、独立して課題を完了させる必要があります。チャレンジは通常、少し難易度が高く設定されています。もし難しいと感じた場合は、Labby に相談するか、解決策(Solution)を確認してください。過去のデータによると、これは 初級 レベルのチャレンジで、合格率は 92% です。また、学習者から 98% の高評価を得ています。

宇宙飛行士の名札プロセッサ

このステップでは、宇宙飛行士の名前を処理して標準化された名札を作成する Python スクリプトを作成します。

タスク

  • /home/labex/project ディレクトリに name_tag_processor.py という名前の Python スクリプトを作成してください。(WebIDE の使用を推奨します)
  • input() 関数を使用して、ユーザーに宇宙飛行士のフルネームを入力するように促します。
  • 入力された名前を処理し、以下の操作を行って標準化された名札を作成します:
    1. upper() メソッドを使用して、フルネームをすべて大文字に変換します。
    2. replace() メソッドを使用して、すべてのスペースをアンダースコア(_)に置き換えます。
    3. 処理された名前の先頭に接頭辞 "ASTRONAUT_" を追加します。
  • 元の名前と、処理後の名札を表示します。

文字列メソッドのリファレンス

upper()

upper() メソッドは、文字列内のすべての文字を大文字に変換します:

name = "John Doe"
uppercase_name = name.upper()  ## Returns "JOHN DOE"

replace()

replace() メソッドは、指定した部分文字列を別の文字列にすべて置き換えます:

name = "John Doe"
name_with_underscores = name.replace(" ", "_")  ## Returns "John_Doe"

要件

  • スクリプト名は name_tag_processor.py とし、/home/labex/project ディレクトリに配置すること。
  • 上記の例に示されている文字列メソッド upper()replace() を使用すること。
  • スクリプトはエラーなく実行され、ユーザーに入力を促すこと。
  • 出力には、元の名前と処理後の名札の両方が表示されること。

実行例

チャレンジが完了したら、WebIDE のターミナル(上部メニューバー -> Terminal -> New Terminal)を開き、スクリプトを実行します。

python3 name_tag_processor.py
Astronaut name tag example

以下のような出力が表示されます:

Enter astronaut's full name: John Doe
Original name: John Doe
Processed name tag: ASTRONAUT_JOHN_DOE
✨ 解答を確認して練習

まとめ

このチャレンジでは、宇宙飛行士の名札を処理する Python スクリプトを作成しました。この演習を通じて、upper()replace() といった Python の文字列操作メソッドへの理解を深めることができました。また、input() 関数を使用したユーザー入力の取得や、出力文字列のフォーマットについても練習しました。これらのスキルは Python プログラミングの基礎であり、スペースアカデミーのトレーニングで今後遭遇する、より複雑なデータ処理タスクにおいても非常に役立つものです。