본문 바로가기

Python

[Python Skill Up] 자리 맞춤 메서드

파이썬에서 문자열 자리 맞춤을 위한 가장 기초적인 방법을 소개하도록 하겠다.

(나 또한 zfill 메서드를 제외한 나머지 메서드들은 처음 봤는데, 알아두면 유익하게 써먹을 수 있을 것 같다)

 

1. ljust()

2. rjust()

3. center()

4. zfill()

 

ljust(), rjust(), center() 메서드의 경우, 문자열 텍스트가 주어진 "길이"보다 짧다면 (각 메서드에 따라) 텍스트가 왼쪽, 오른쪽 혹은 가운데로 이동한다.

 

※ <주의>

  • zfill()은 rjust()의 기능을 그냥 단순화한 것이 아니다.
  • 아래 파이썬 코드의 "<예시4>" 부분을 보면, zfill 메서드를 사용하면 "채우기_문자"로 넣어준 "0"이 숫자의 일부가 되며, "0"이 숫자와 기호 사이에 위치하는 것을 확인할 수 있다.
  • 반면, rjust 메서드"채우기_문자"로 넣어준 "0"을 숫자의 일부로 인식하지 않는다는 점에 유의해야 한다.
# 문자열 왼쪽 자리 맞춤
str.ljust(길이, 채우기_문자)

# 문자열 오른쪽 자리 맞춤
str.rjust(길이, 채우기_문자)

# 문자열을 가운데에 위치하도록 자리 맞춤
str.center(길이, 채우기_문자)

# 숫자 0 채우기
str.zfill(길이)


# <예시1>
new_str = 'Title'.center(10, '#')
print(new_str) # 출력 결과: ##Title###

# <예시2>
new_str = '987'.rjust(6, '0')
print(new_str) # 출력 결과: 000987

# <예시3>
new_str = 'Warning'.ljust(9, '*')
print(new_str) # 출력 결과: **Warning

# <예시4> - zfill() vs rjust()
new_value1 = '-7'.zfill(5)
print(new_value1) # 출력 결과: '-0007'

new_value2 = '-7'.rjust(5, '0')
print(new_value2) # 출력 결과: '000-7'