[프로그래머스] Lv1. 숫자 문자열과 영단어

CHAEN·2022년 3월 15일
0

problem solving

목록 보기
14/33
post-thumbnail

문제

접근 방법

  • 반복문을 돌며 정규표현식을 이용해 0~9에 해당하는 문자들을 바꿈

나의 풀이

import re

def solution(s):
    
    nums = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
    
    for i, n in enumerate(nums):
        s = re.sub(n, str(i), s)
    
    return int(s)

어쩐지 문자열을 대치하는 문제만 보면 정규표현식을 써야할 것만 같다..

다른 사람의 풀이

num_dic = {"zero":"0", "one":"1", "two":"2", "three":"3", "four":"4", "five":"5", "six":"6", "seven":"7", "eight":"8", "nine":"9"}

def solution(s):
    answer = s
    for key, value in num_dic.items():
        answer = answer.replace(key, value)
    return int(answer)

딕셔너리로 단어장을 만든 뒤 replace로 바꾸기도 가능!!!

profile
공부중입니다

0개의 댓글

관련 채용 정보