문제 설명
JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고)
문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.
- s는 길이 1 이상 200 이하인 문자열입니다.
- s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다.
- 숫자는 단어의 첫 문자로만 나옵니다.
- 숫자로만 이루어진 단어는 없습니다.
- 공백문자가 연속해서 나올 수 있습니다.
"3people unFollowed me" | "3people Unfollowed Me" |
"for the last week" | "For The Last Week" |
나의 풀이
def solution(s):
answer = s.split(" ")
for i in range(len(answer)):
answer[i] = answer[i][0].upper() + answer[i][1:].lower()
return ' '.join(answer)
1. 문자열을 공백으로 분리하여 단어 배열을 만든다.
2. 각 단어를 탐색하며 단어의 맨 앞글자는 대문자로 바꾸고, 나머지는 소문자로 바꾼다.
3. 다시 공백을 기준으로 조인하여 리턴한다.
오류가 난다..
def solution(s):
answer = s.split(" ")
for i in range(len(answer)):
answer[i] = answer[i][:1].upper() + answer[i][1:].lower()
return ' '.join(answer)
answer[i][0].upper() 에서 answer[i][:1].upper() 으로 수정하니 오류없이 실행된다. 흠..
title() 내장함수를 사용해서 풀수도 있나보다. 하지만 현재 개편된 상태라서 실행이 안됨
title | 주어진 문자열에서 알파벳 외의 문자(숫자, 특수기호, 띄어쓰기 등)로 나누어져 있는 영단어들의 첫 글자를 모두 대문자로 변환시킨다. |
'CodingTest > [프로그래머스 LV.2]' 카테고리의 다른 글
프로그래머스 LV.2 - 올바른 괄호[Python] (0) | 2023.02.12 |
---|---|
프로그래머스 LV.2 - 최솟값 만들기[Python] (0) | 2023.02.12 |
프로그래머스 LV.2 - 최댓값과 최솟값[Python] (0) | 2023.02.12 |
프로그래머스 LV.2 - 상품 별 오프라인 매출 구하기[MySQL] (0) | 2023.02.11 |
프로그래머스 LV.2 - 진료과별 총 예약 횟수 출력하기[MySQL] (0) | 2023.02.11 |