알고리즘/코드워

[python]Disemvowel Trolls

(ㅇㅅㅎ) 2020. 11. 2. 23:07
728x90
반응형

www.codewars.com/kata/52fba66badcd10859f00097e/train/python

 

Codewars: Achieve mastery through challenge

Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential.

www.codewars.com

이 문제는 간단히 말하자면 입력받은 문자열의 모음(AEIOU)을 지우고 리턴하는 것입니다.

 

이 문제를 처음 접했을 당시에는 vowel이라는 리스트 변수에 모음 문자들을 담고 for문과 replace를 이용하였습니다.

def disemvowel(string):
    vowel = ['a''e''i''o''u''A''E''I''O''U']
    for r in vowel:
        string = string.replace(r, "")
    return string
 

 

그러나 리스트 변수를 사용하지 않고 'aeiouAEIOU'의 형태로 사용 가능합니다.

def disemvowel(string):
    for r in 'aeiouAEIOU':
        string = string.replace(r, "")
    return string

 

이 외에도 다른 분들은 translate를 이용하는 방법 등 여러 가지가 있습니다.

def disemvowel(s):
    return s.translate(None"aeiouAEIOU")

 

def disemvowel(string):
    return "".join(c for c in string if c.lower() not in "aeiou")

 

더보기

여담입니다만....

사실 코드워의 문제를 풀 때 kata의 난이도가 낮을 경우 코드를 구성하는 것이 걱정이 아니라 문제 해석이 걱정입니다.

실제로 문제가 너무 긴 문제는 풀지 않거나 입력값과 출력 값을 보고 문제를 풀었습니다.

이런 간단한 문제도 저는 구글이나 파파고의 도움을 받고 있습니다.

코딩처럼 꾸준히 영어를 하다 보면 익숙해지는 날이 오리라 생각하고 있습니다.

사실 영어를 공부한 기간이 더 길긴 합니다.

 

반응형

'알고리즘 > 코드워' 카테고리의 다른 글

[python]Equal Sides Of An Array  (1) 2020.11.05
[python]Number of People in the Bus  (0) 2020.11.04
[python]Mumbling  (0) 2020.10.29
[python]Complementary DNA  (0) 2020.10.28
[python]Take a Ten Minute Walk  (0) 2020.10.27