Programmers/1단계

[1단계][연습문제] 이상한 문자 만들기

Snowboarder 2022. 3. 20. 19:47

문제접근

  • split을 사용하여 단어를 나눈다.
  • list를 사용해서 각 단어의 개수를 for 반복 돌린다.
  • 문자열 자체를 for을 돌린다 if조건하에 다돌리면 answer에 apppend를 result를 append한다.
  • 총 다된 것을 문자열 형태로  ' '띄어쓰기 하나두고 문자열 형식으로 join한다.

문제풀이

내풀이

def solution(s):
    answer = []
    s = s.split(' ')
    
    for i in range(len(s)):
        result = ''
        for j in range(len(s[i])):
            if j%2==0:
                result = result + s[i][j].upper()
            else:
                result = result + s[i][j].lower()
        answer.append(result)
    
    return ' '.join(answer)

다른사람풀이

def toWeirdCase(s):
    return " ".join(map(lambda x: "".join([a.lower() if i % 2 else a.upper() for i, a in enumerate(x)]), s.split(" ")))
  •  join함수를 쓰고 if 조건문 else for반복문을 쓴다. lambda함수를 쓴다
def toWeirdCase(s):
    return ' '.join([''.join([c.upper() if i % 2 == 0 else c.lower() for i, c in enumerate(w)]) for w in s.split()])