문제풀이/기타

[Python/파이썬] 프로그래머스 JadenCase 문자열 만들기

딜레이레이 2022. 10. 10. 11:36
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

코드

def solution(s):
    answer = ''
    flag = True # 앞이 공백이었으면 true
    for idx in range(len(s)):
        if flag and s[idx].isalpha():    # 단어의 첫 문자 & 알파벳임
            s = s[:idx] + s[idx].upper() + s[idx+1:]
            flag = False
            continue
        if s[idx] == ' ':
            flag = True
        else:
            s = s[:idx] + s[idx].lower() + s[idx+1:]
            flag = False
    return s

짧게 짜보고 싶어서 원래는 아래와 같이 했었는데 공백문자가 연속해서 나올 수 있다는 조건 때문에 안된다...

def jaden(s):
    if s[0].isalpha():
        return s[0].upper() + s[1:].lower()
    else:
        return s.lower()
    
def solution(s):
    return ' '.join(map(jaden, s.split()))