숫자 문자열과 영단어

JOY·2022년 4월 20일
0

📌 문제 링크

https://programmers.co.kr/learn/courses/30/lessons/81301

✔️ 풀이 1. 반복문 사용하여 영단어가 완성될 경우 숫자로 변경

def solution(s):
    answer = ''
    dict = {}
    en = ['zero','one','two','three','four','five','six','seven','eight','nine']
    for i in range(10):
        dict[en[i]] = i
    # print(dict)
    eng = ''
    for i in s :
        if i.isdigit():
            answer += i
        elif i.isalpha():
            eng += i
            if eng in dict.keys():
                answer += str(dict[eng])
                eng = ''
    return int(answer)

✔️ 풀이 2. replace 함수 사용하여 문자열에 숫자 영단어가 있을 경우 변경

def solution(s):
    en = ['zero','one','two','three','four','five','six','seven','eight','nine']
    for idx, num in enumerate(en):
        if num in s :
            s = s.replace(num, str(idx))
        answer = s
    
    return int(answer)

0개의 댓글