S E P H ' S

[Python] 숫자 문자열과 영단어 본문

Algorithm/Programmers

[Python] 숫자 문자열과 영단어

yoseph0310 2021. 7. 9. 20:06
 

코딩테스트 연습 - 숫자 문자열과 영단어

네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자

programmers.co.kr

실제 코테에서 봤었던 문제였다. 당시엔 

 

def sol(s):
    s = s.replace('zero', '0')
    s = s.replace('one', '1')
    s = s.replace('two', '2')
    s = s.replace('three', '3')
    s = s.replace('four', '4')
    s = s.replace('five', '5')
    s = s.replace('six', '6')
    s = s.replace('seven', '7')
    s = s.replace('eight', '8')
    s = s.replace('nine', '9')

    return int(s)

이렇게 무지성으로 풀이했었다. 이번에는 enumerate를 활용하여 풀었다.

 

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