우주비행사 이름표 처리기 만들기

PythonBeginner
지금 연습하기

소개

LabEx 우주 아카데미의 신입 대원이 된 여러분에게 우주비행사 이름표를 처리하는 간단한 프로그램을 제작하는 임무가 주어졌습니다. 이번 챌린지는 다양한 우주 임무 시나리오에서 텍스트 데이터를 다루는 데 필수적인 기술인 파이썬 문자열 조작 능력을 테스트합니다.

이 콘텐츠는 챌린지입니다. 가이드형 실습과 달리, 제공되는 단계를 따라가는 것이 아니라 스스로 과제를 해결해야 합니다. 챌린지는 다소 어려울 수 있지만, 막히는 부분이 있다면 Labby 와 상의하거나 모범 답안을 확인할 수 있습니다. 통계에 따르면 이 챌린지는 입문 수준이며, 통과율은 92%, 학습자 만족도는 98%에 달합니다.

우주비행사 이름표 처리기

이번 단계에서는 우주비행사의 이름을 입력받아 표준화된 이름표 형식으로 변환하는 파이썬 스크립트를 작성합니다.

과제

  • /home/labex/project 디렉토리에 name_tag_processor.py라는 이름의 파이썬 스크립트를 생성하세요. (WebIDE 사용 권장)
  • input() 함수를 사용하여 사용자로부터 우주비행사의 전체 이름을 입력받습니다.
  • 입력된 이름을 다음 작업 순서에 따라 처리하여 표준화된 이름표를 생성하세요:
    1. upper() 메서드를 사용하여 전체 이름을 대문자로 변환합니다.
    2. replace() 메서드를 사용하여 모든 공백을 언더바 (_) 로 교체합니다.
    3. 처리된 이름의 맨 앞에 "ASTRONAUT_"라는 접두사를 추가합니다.
  • 원본 이름과 최종 처리된 이름표를 각각 출력합니다.

문자열 메서드 참고

upper()

upper() 메서드는 문자열의 모든 문자를 대문자로 변환합니다:

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

replace()

replace() 메서드는 문자열 내의 특정 부분 문자열을 찾아 다른 문자열로 모두 교체합니다:

name = "John Doe"
name_with_underscores = name.replace(" ", "_")  ## "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
✨ 솔루션 확인 및 연습

요약

이번 챌린지에서는 우주비행사 이름표를 처리하는 파이썬 스크립트를 제작해 보았습니다. 이 과정을 통해 upper()replace() 같은 파이썬 문자열 조작 메서드에 대한 이해를 높일 수 있었습니다. 또한 input() 함수를 활용한 사용자 입력 처리와 출력 문자열 포매팅 방식도 연습했습니다. 이러한 기술은 파이썬 프로그래밍의 기초이며, 향후 우주 아카데미 훈련 과정에서 마주하게 될 더 복잡한 데이터 처리 작업에서도 매우 유용하게 활용될 것입니다.