replace()
문자열 method
replace(old, new, [count])
주어진 문자열에서 old -> new 로 대치된 문자열을 return 한다.
원래 문자열을 그대로 바뀌지 않는다.(string은 수정불가능)
count: 변경할 횟수, default는 -1로 전체를 의미한다.
예시)
a = 'hello world'
a.replace('hello','hi') # hi word
*만약 old에 해당하는 문자열이 없으면 원래 문자열을 return
문제)
다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다.
- 1478 → "one4seveneight"
- 234567 → "23four5six7"
- 10203 → "1zerotwozero3"
이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return하도록 solution 함수를 완성해라
내가 짠 코드)
def solution(s):
text = str(s)
target = {'zero':'0','one':'1','two':'2','three':'3','four':'4','five':'5','six':'6','seven':'7','eight':'8','nine':'9'}
for key in target:
text = text.replace(key, target[key])
answer = int(text)
return answer
주어진 문자열에서 target의 key를 찾으면 해당하는 key의 value로 repalce 해준다.
또는 이렇게..
target = {"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 target.items():
answer = answer.replace(key, value)
return int(answer)
dic.items() -> key와 value의 값을 동시에 가져올 수 있다.
기본 문자열 함수를 잘 익히도록 하자... 딕셔너리도...
'코딩테스트 with Python' 카테고리의 다른 글
다중 집합 (0) | 2022.01.21 |
---|---|
[파이썬] 빈 리스트 확인 하는법 (0) | 2022.01.06 |
[파이썬] itertools ,순열, 조합 등 (0) | 2022.01.01 |
[파이썬] Counter 객체 (0) | 2021.12.28 |
[파이썬] 내장 함수 zip (0) | 2021.12.28 |