code/[프로그래머스] python
[코딩 테스트 연습 입문] 모음 제거
오리는짹짹
2022. 12. 26. 14:58
문제
영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
❗제한사항❗
- my_string은 소문자와 공백으로 이루어져 있습니다.
- 1 ≤ my_string의 길이 ≤ 1,000
입출력 예
입출력 예 설명
입출력 예 #1
- "bus"에서 모음 u를 제거한 "bs"를 return합니다.
입출력 예 #1
- "nice to meet you"에서 모음 i, o, e, u를 모두 제거한 "nc t mt y"를 return합니다.
✔풀이
def solution(my_string):
answer = ''
vowel = ['a','e','i','o','u']
for alphabet in list(my_string):
if alphabet not in vowel:
answer+=alphabet
return answer
📝설명
for문을 통해 my_string의 각 알파벳을 꺼내고, 그 알파벳이 모음 리스트에 없다면 answer에 추가하도록 해야겠다고 생각했다.
우선, 대조를 위한 모음 리스트 vowel을 만들었다.
초기의 my_string의 상태는 문자열이다.
for문에서 반복범위로 설정하려면 list 형태를 가져야 하니까 list()를 씌웠다.
여기에서 꺼내진 알파벳이 vowel 리스트에 없다면, answer에 더하도록 한다.
이렇게 된다면 결과로 my_string에서 모음값이 제외된 answer 문자열이 나온다.
👑모범 답안
🔎'구분자'.join(list)은 리스트를 문자열로 만들어서 반환해주는 함수이다.
🔎 for문을 vowels를 반복변수로 설정하고, my_string에서 vowel에 해당하는 값이 있으면 ''로 바꾸도록 했다.
👀느낀 점
: .join()에 대해서는 문제를 풀면서 떠올렸지만, .replace()에 대해서는 생각도 못했었다.
다음번에는 활용해봐야겠다.