본문 바로가기
algorithm/programmers

JadenCase 문자열 만들기 [프로그래머스]

by hoonzii 2021. 5. 7.
반응형

문제 풀이 정리

 

    • JadenCase 문자열 만들기

문제 설명

JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건

  • s는 길이 1 이상인 문자열입니다.
  • s는 알파벳과 공백문자(" ")로 이루어져 있습니다.
  • 첫 문자가 영문이 아닐때에는 이어지는 영문은 소문자로 씁니다. ( 첫번째 입출력 예 참고 )

입출력 예

s / return

"3people unFollowed me" "3people Unfollowed Me"
"for the last week" "For The Last Week"

코드 

def solution(s):
    answer = ''
    
    result = []
    for token in s.split(" "):
        if(len(token) != 0 and token[0].isalpha()):
            token = token[0].upper()+token[1:].lower()
        result.append(token)
        
    answer = " ".join(result)
    
    return answer

 

문제 넋두리

이정도 난이도의 문제는 쓰지 않으려다가 몇자 적는다.

일단 파이썬에도 역시 알파벳의 경우 대소문자 변형 함수가 기본의 내장되어 있고,

해당 글자가 알파벳인지 아닌지 검출하는 함수역시 기본으로 내장되어 있었다.

 

이번 문제도 무난히 넘어가겠거니 채점을 눌러보니 런타임 에러가 났었는데

문자열이 길이가 0일경우 문제겠지 하고 조건에 추가해줬더니 동작했다.

 

문자열을 체크하는 로직을 쓸때는 항상 길이가 0보다 큰지 검사하게끔 코드를 짜야겠다는 교훈을 얻었기에

이렇게 몇자 적는다.

반응형

댓글