[python] 문자열에 0 또는 특정 문자를 원하는 개수만큼 추가하는 메서드 (ljust, rjust, zfill)

김진환·2023년 5월 22일
0
<문자열>.ljust(<길이>, <문자>)
<문자열>.rjust(<길이>, <문자>)
<문자열>.zfill(<길이>)

파이썬에서 어떤 문자열이 존재할 때, 그 문자열이 특정 길이가 될 때 까지 추가하는 메서드가 존재한다.

예를 들어,

'1001'
'ABafge'
'1pr'

이렇게 각기 다른 길이의 문자열이 있을 때,
6의 길이로 고정하여 '#'을 문자열의 앞에 붙여야 한다고 가정하자.

'##1001'
'ABafge'
'###1pr'

원하는 결과물은 위와 같다.

이 때,
파이썬에서는 ljust( ) 라는 메서드를 사용할 수 있다.

<문자열>.ljust(<길이>, <문자>)

의 형태로 사용할 수 있으며,
위의 예시와 같은 결과물을 내려면

arr = ['1001', 'ABafge', '1pr'] 

for i in range(len(arr)):
	arr[i] = arr[i].ljust(6, '#')

#['##1001', 'ABafge','###1pr']
print(arr)

이런 방법으로 사용할 수 있다.
2번째 예시에서 이미 문자열의 길이가 6이기 때문에, '#'의 추가가 일어나지 않는 점에 유의하자.

반대로 오른쪽에 문자를 추가하고 싶은 경우는

<문자열>.rjust(<길이>, <문자>)

를 사용하면 된다.

그 이외에,
문자열의 앞쪽(왼쪽)에 '0'을 추가하고자 할 때 사용할 수 있는 zfill() 메서드가 존재한다.

<문자열>.zfill(문자)
val = '101'

#'000101
print(val.zfill(6)

이는 2진수 형태의 문자열을 처리해야 하는 경우
문자열의 길이를 고정할 때 사용할 수 있다.

profile
개발자라는 틀에 얽매이지 않는 성장

0개의 댓글