본문 바로가기
  • AI 개발자가 될래요
Python

[Python/코테공부] 대소문자 바꿔서 출력하기

by 꿀개 2023. 10. 30.

[Python] 대소문자 바꿔서 출력하기

 

대소문자 바꿔서 출력하기

 

나의 처음 풀이

str = input()
lower = [i.upper() if i.islower() else i.lower() for i in str]
print(''.join(lower))

upper, lower, join에 대한 함수를 알고 있었기 때문에 무리 없이 풀이했다고 생각했다.

 

테스트 결과

대소문자 바꿔서 출력하기 1차 시도 결과

 

그러나 다른 사람의 풀이에서 쇼킹한 답을 발견했다.

 

다른 사람의 풀이

str = input()
print(str.swapcase())

 

이런 내장함수가 있었다니.. 쇼킹하다..

 

테스트 결과

swapcase 테스트 결과

 

확실히 내장함수 최적화가 잘 되어있는지 더 빠르다. (미묘한 차이지만..)

나중에 응용해볼만도 하다. 근데 심사위원이 이를 좋게 볼지는 모르겠다. 이 함수를 왜 썼냐고 물어본다면 효율성 측면에서 장점이 있어서 썼다는 식으로 이야기 해야할 것 같다.

 

* 문제 출처 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/181949

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr