[Programmers][Level2][Python]JadenCase 만들기

냥린이·2021년 12월 18일
0

알고리즘

목록 보기
5/28
post-thumbnail

문제

공백 단위로 단어를 구분하는 단어를 받아와서
첫 문자가 알파벳이라면 대문자로 변환하고 숫자는 그대로 출력, 나머지는 소문자 변환하는 코드를 자성

풀이

우선 생각나는대로 절차적으로 구현하는 방법이 있다.
1. 첫글자가 숫자면 패스
2. 첫글자가 문자라면 대문자로 (toUpperCase)
3. 나머지는 소문자로 (toLowerCase)

하지만 파이썬에는 이 모든 걸 자동으로 해주는 capitalize()라는 함수가 있다..

코드

def solution(s):
    answer = " ".join([i.capitalize() for i in s.split(" ")])
    return answer

어이 없을 정도로 간단한 코드가 나온다.

파이썬에서 코드를 줄이기 위해
1. 함수 압축 (list comprehension)
2. 람다 (lambda)
3. 각종 내장 함수
4. 패키지 (코테에서는 못 쓸 수 있음)

1,2번은 안다고 끝나는 게 아니라 많이 써보면서 연습이 필요하다.
3번은 돌아다니다가 우연히 알게 되는 경우가 많은데, 의식적으로 유용한 함수를 찾아다니는 노력도 필요해보인다. (어떻게?)
4번은 실제로 쓸 스크립트를 짤 때 정말 도움이 많이 된다. 예를 들면 for문 진행도를 보여주는 tqdm 같은 패키지는 데이터 분석 시 엄청 유용하다.

profile
홀로서기 기록장

0개의 댓글