Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬 zfill() 메서드 완벽 가이드: 문자열 앞에 0 채우는 방법

파이썬 zfill() 메서드란?

파이썬의 zfill() 메서드는 문자열의 왼쪽(앞부분)에 0(zero)을 채워 지정된 길이만큼 만들어 주는 내장 문자열 메서드입니다. 숫자 형식의 문자열을 일정한 자릿수로 맞춰야 할 때 특히 유용합니다.

zfill() 기본 사용법

>>> '25'.zfill(6)
'000025'

위 예제에서 문자열 '25'는 길이가 2이므로, zfill(6)을 호출하면 부족한 4자리만큼 앞에 0이 채워져 '000025'가 됩니다. 만약 원래 문자열의 길이가 지정한 너비보다 크거나 같다면 문자열은 그대로 반환됩니다.

rjust() 메서드로 0 채우기

문자열 클래스에서 제공하는 rjust(width[, fillchar]) 메서드를 사용할 수도 있습니다. 이 메서드는 문자열을 오른쪽 정렬하고, 남는 왼쪽 공간을 지정한 채움 문자(fillchar)로 채웁니다. 기본 채움 문자는 공백이지만, '0'을 직접 지정할 수도 있습니다.

>>> '25'.rjust(6, '0')
'000025'

rjust()는 0뿐 아니라 다른 문자로도 채울 수 있어 zfill()보다 유연하게 활용할 수 있다는 장점이 있습니다.

문자열 포매팅 활용하기

파이썬의 문자열 포매팅 기능을 사용해도 동일한 결과를 얻을 수 있습니다.

>>> print "%06d" % 25
'000025'

%06d는 숫자를 6자리로 표현하되, 빈 자리를 0으로 채우라는 의미입니다. 참고로 파이썬 3에서는 f-string을 사용하는 것이 더 권장됩니다.

>>> num = 25
>>> f"{num:06d}"
'000025'

정리

문자열 앞에 0을 채우는 방법은 크게 세 가지입니다.
- zfill(width): 가장 간단하며, 전용으로 0을 채움
- rjust(width, '0'): 채움 문자를 자유롭게 지정 가능
- 문자열 포매팅(%06d 또는 f-string): 숫자 출력 형식과 함께 처리할 때 편리

상황에 맞는 방법을 선택하면 코드의 가독성과 효율성을 모두 높일 수 있습니다.