• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

숫자를 대신 쓸 수 없나요?

21.03.12 21:12 작성 조회수 83

0

예를 들어 

jumin = '125456-321456'

print('성별 : ' + jumin[7])일때 

3 이라는 성별 부분에 남자로 바꿔서 표기해 보고싶은데 이런건따로 못하나요?

답변 1

답변을 작성해보세요.

0

김경민님의 프로필

김경민

2021.03.14

안녕하세요! 

제가 이해한 것이 맞다면 print문의 출력 값을

성별: 3 이 아닌 성별: 남자 로 나오게 하고 싶으신 것 같습니다.

단순화해서 생각하면 "숫자"를 받아서, 성별(남성 / 여성)을 

출력하는 기능이 필요합니다.

숫자를 입력받아 성별을 리턴하는 함수를 만들어보시는 것은 어떨까요?

getGender(3)

>> "남자"

가 된다면,

print("성별: " + getGender(3))

과 같이 사용할 수 있을 것 같습니다!

예시로 함수를 만들어보겠습니다.

간단하게 만든 함수이니 예외처리나 로직보다는

"함수"를 통해 원하는 기능(입력과 그에 따른 출력)을 만들 수 있구나를 생각해주시면 감사하겠습니다!

def getGender( inputValue ):

    genderNumber = int( inputValue )

    if genderNumber == 0 or genderNumber == 9:

    # 단순 안내메세지 출력이 아닌 에러를 일으킬 수도 있습니다.

    # "파이썬 예외처리", " 파이썬 에러", "파이썬 사용자 정의  에러" 등으로 검색해보세요!

        print("Error: 올바르지 않은 주민등록번호 형식입니다.")

        return

    if genderNumber % 2 == 1:

        return "남자"

    else:

        return "여자"

남성은 주민등록번호 뒷자리가 (내국인) 1, 3 (외국인) 5, 7 인 경우,

여성은 2, 4, 6, 8인 경우로 정했습니다.