TIL/알고리즘

[TIL] Python 문자열 출력

쑤키다요 2025. 1. 23. 20:09

 

*Programmers 코딩테스트 기초 트레이닝 캘린더의 순서를 참고합니다

*소스 코드는 다음 깃허브에 날짜별로 올라옵니다 - https://github.com/s0ooo0k/Algorithm_Study

 

GitHub - s0ooo0k/Algorithm_Study: Algorithm Study 문제 및 풀이

Algorithm Study 문제 및 풀이. Contribute to s0ooo0k/Algorithm_Study development by creating an account on GitHub.

github.com

 

 


 

👊🏼 오늘 해결한 문제

[프로그래머스 코딩 기초 트레이닝 - Day 01]

- 문자열 출력하기

- a와 b 출력하기

- 문자열 반복해서 출력하기

- 특수문자 출력하기

 


📝 TIL

- 대소문자 바꿔 출력하기

제한사항

  • 1 ≤ str < 20 (str은 알파벳으로 이루어진 문자열)

입출력 예

입력#1

aBcDeFg

 

출력#1

AbCdEfG

 

설계

  1. input()을 통해 문자열 입력받기
  2. for문을 통해 문자열 첫 단어부터 끝단어까지 반복하면서
  3. if문으로 대문자인지 checking 후 바꿔서 출력

 

문제 상황 및 개념

 

1) for문 혼동 

설계 2. for문의 변수와 in 뒤의 속성이 c랑 헷갈려 in 조건 파트를 len(str), int 형식으로 작성함

for문은 그냥 당연히.. 기본 중의 기본 중의 기본! 어떻게 헷갈려😱

파이썬 for문 기본 구조

for [변수] in [문자열, 리스트, 튜플]:
	[반복 내용]

 

# 예시 1. 리스트 반복

# 배열 출력
arr = [0, 1, 2, 3, 4]
for i in arr:
	print(i)
    
# 출력
1
2
3
4
5

 

# 예시 2. 문자열 반복

# str 출력하기
str = 'hello"
for i in str:
	print(i)

# 출력
h
e
l
l
o

 

 

 

2) 대소문자 판별 함수

설계 3. 과정에서 대문자 checking 방법을 몰랐다!

파이썬 대소문자 관련 함수(upper, lower, isupper, islower)

  • 변환 함수
    • str.upper()
      • 모든 소문자를 대문자로 변환한다.
      • 예: "hello".upper() → "HELLO"
    • str.lower()
      • 모든 대문자를 소문자로 변환한다.
      • 예: "HELLO".lower() → "hello"
    • str.swapcase()
      • 대문자는 소문자로, 소문자는 대문자로 변환한다.
      • 예: "Hello".swapcase() → "hELLO"
  • 판별 함수
    • str.isupper()
      • 모두 대문자로 이루어져있는지 확인한다
      • 예: "HELLO".isupper() → True
    • str.islower()
      • 모두 소문자로 이루어졌는지 확인한다
      • 예: "hello".islower() → True

이외에도 capitalize(문자열의 첫 글자를 대문자로 변환), title(각 단어 첫 글자를 대문자로 변환) 등이 있다.

 

 

 

소스코드

더보기

풀이 1

str = input()

for i in str:
    if i.isupper() == True:
        print(i.lower(), end="")
    else:
        print(i.upper(), end="")

 

풀이 2

print(input().swapcase())

 


🚀 새로 배운 것

- 'isupper', 'islower'과 같은 판별 함수를 통해 대소문자를 판별할 수 있다!

- python의 for문은 [리스트, 튜플, 문자열] 형태이기에, 문자열을 그대로 범위에 넣는다

 

 


😺  느낀점

- 문자 반복을 잘 활용하자. 문자열을 사용하는 알고리즘 문제들이 많다

- 파이썬은 내장함수가 많다! 함수를 잘 활용하면 짧고 간결한 코딩이 가능하다.

 


 

 거의 n년만에 하는 파이썬 및 알고리즘 공부.
시작한 건 오래 됐지만 한 번도 제대로 공부해본 적이 없는 것 같은 애증의 섹션...
코딩테스트 대비 겸 잊고 있던 파이썬을 다시 시작하고, 매일매일 기록하기로 했다!
정말 기초부터 놓치고 있던 개념들을 체크하고 쌓아올리자