알쓸코지
article thumbnail

🔗 문제

https://school.programmers.co.kr/learn/courses/30/lessons/120894

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 설명

영어가 싫은 머쓱이는 영어로 표기되어있는 숫자를 수로 바꾸려고 합니다. 문자열 numbers가 매개변수로 주어질 때, numbers를 정수로 바꿔 return 하도록 solution 함수를 완성해 주세요.

제한사항

  • numbers는 소문자로만 구성되어 있습니다.
  • numbers는 "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" 들이 공백 없이 조합되어 있습니다.
  • 1 ≤ numbers의 길이 ≤ 50
  • "zero"는 numbers의 맨 앞에 올 수 없습니다.

입출력 예

numbers result
"onetwothreefourfivesixseveneightnine" 123456789
"onefourzerosixseven" 14067

 

 

💻 Code

def solution(numbers):
    number_dict = {
        "zero": '0', "one": '1', "two": '2', "three": '3', "four": '4',
        "five": '5', "six": '6', "seven": '7', "eight": '8', "nine": '9'
    }

    for key, val in number_dict.items():
        numbers = numbers.replace(key, val)

    return int(numbers)
  • "영어": 숫자 형태로 number_dict을 만들어둔 뒤, replace(영어, 숫자) 형태로 numbers를 바꾼다.
  • 이렇게 수정된 numbers를 정수 형태로 변환해준 뒤 리턴하면 된다.

profile

알쓸코지

@chocoji

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!