⚡️algorithm
[문자열] 프로그래머스 lv1. 숫자 문자열과 영단어
남남이루
2022. 5. 28. 09:58
문제
https://programmers.co.kr/learn/courses/30/lessons/81301
내코드
문자인 애들만 따로 저장해뒀다가, word 딕셔너리의 키랑 같으면 값으로 넣어주기
import re
def solution(s):
word = {'zero':'0','one':'1','two':'2','three':'3','four':'4','five':'5','six':'6','seven':'7','eight':'8','nine':'9'}
news = ''
letter=''
for i in s:
if i.isdecimal():
news+=i
else:
letter+= i
if letter in word:
print(letter)
news+=word[letter]
letter =''
print(news)
return int(news)
다른 분 코드
그냥, 키 밸류 맞는 거 있으면 replace 해줘 버리는구나 신박..
dic기준으로 돌면서 키를 다 값으로 바꿔줘버린다.
if 로 탐색도 안해도 된다.
다만, replace 쓸 때, 재할당 해줘야 되는거 잊지 말기
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)