Algorithm/programmers
[Python] JadenCase 문자열 만들기
nsean
2023. 12. 18. 02:14
문제 설명
JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고)
문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.
- s는 길이 1 이상 200 이하인 문자열입니다.
- s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다.
- 숫자는 단어의 첫 문자로만 나옵니다.
- 숫자로만 이루어진 단어는 없습니다.
- 공백문자가 연속해서 나올 수 있습니다.
s | return |
"3people unFollowed me" | "3people Unfollowed Me" |
"for the last week" | "For The Last Week" |
문제풀이
문자열을 대문자 처리해주는 upper() 함수와 소문자 처리해주는 lower()함수를 사용해주면 된다.
def solution(s):
answer = s[0].upper()
for i in range(1,len(s)):
if s[i-1] == " ":
answer += s[i].upper()
else:
answer += s[i].lower()
return answer
초기조건을 설정해주고, 나머지 문자열을 순회하면서 앞이 공백이었으면 upper처리, 아니면 lower 처리를 해주면 되었다.
다만 이것은 파이썬의 강력한 함수 기능을 활용한 풀이이기 때문에,
완전한 풀이는 앞에 공백이 있는 문자가 숫자 혹은 공백인지 확인해줘야하는 절차가 필요하다.