Programming Languages/Python

[Python] 알고리즘 문제 풀다 발견한 대소문자 바꾸기 메서드.. 우리의 시간을 아끼자 ^ㅡ^

쉬지마 이굥진 2024. 5. 13. 15:53

프로그래머스 코딩 기초 트레이닝 문제를 풀던 중 발견한 좋은 메서드가 있어서 공유 & 기억 차 쓰는 글이다.

 

문제인 즉 이 문제였다 '대소문자 바꾸기'

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

 

프로그래머스

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

programmers.co.kr

 

aBcDeFg 를 AbCdEfG 로 바꿔서 출력하면 되는 문제.

주어진 건 str = input() 뿐이었고 어떻게 할까 하다가 대문자 소문자, 소문자 대문자로 바꿔주는 함수를 만든 후 입력값에 적용시켜 print 하도록 하는 코드를 만들고 실행시키니 결과는 통과.

 

내 코드

def toggle(s):
    result = ''
    for char in s:
        if char.islower():
            result += char.upper()
        else:
            result += char.lower()
    return result

str = input()
print(toggle(str))

 

문자열을 순회하면서 소문자면 대문자로 바꾸고, 그게 아니면 (대문자면) 소문자로 바꾸는 코드다.

 

 

다른 사람 코드

통과됨을 확인한 후, 다른 사람들은 어떻게들 풀었나 ..~~ 하고 다른사람들의 풀이를 보자마자 맨 첨으로 들어온 코드 ..

 

?

?

?

?

..

이런 메서드가 있었다니 파이썬 너 이녀석 대단한 녀석이구나

 

 

swapcase() 메서드

파이썬의 문자열 메서드 swapcase() 는 문자열의 대문자를 소문자로, 소문자를 대문자로 변환한다. 만약 알파벳이 아닌 문자가 들어올 시 그 문자는 그대로 출력된다.

 

실습

아무튼 대단함

 

 

마치며

야무진 메서드를 알았으니 앞으로 또 필요한 일이 생기면 써서 시간을 줄여보자 :-)