[5/30] JadenCase 문자열 만들기

이경준·2021년 5월 31일
0

코테

목록 보기
25/140
post-custom-banner

문제 실패 (오류 발견 실패)

내 코드

def solution(s):
s = list(s)

for i in range(len(s)):
    if(i == 0 or s[i-1] == " "):
        if (s[i].isalpha()):
            s[i] = s[i].upper()
    else:
        if (s[i].isalpha()):
            s[i] = s[i].lower()

return "".join(s)

풀이

  1. 문자열을 리스트로 바꿔준다.
  2. for문을 돌린다.
    1) 전 인덱스가 공백이거나 첫 인덱스면, 알파벳일 경우 대문자로 바꿔준다.
    2) 아니라면, 알파벳일 경우 소무나로 바꿔준다.
  3. 합친다.

처음엔 공백을 기준으로 2차원 리스트로 나눠서 진행했으나, 맨 처음과 끝이 공백일 경우도 있다고 해서 바꿨다.


효율적인 코드

def solution(s):
    return ' '.join([word.capitalize() for word in s.split(" ")])

피드백

  • split 후 capitalize를 쓰고 join을 시켜주면 간단하다.

배운 것

  • capitalize(문자열) : 첫 단어의 첫 글자만 대문자로 바꿔준다.
profile
The Show Must Go On
post-custom-banner

0개의 댓글