LANG/PYTHON

[Python] string앞에 0 채우기(zfill, zjust)

파이썬에서 숫자를 출력하고자 할 때, 앞 숫자에 0을 붙여서 출력해야하는 경우가 있다.

1. zfill(width)

width만큼의 문자열 길이를 진 왼쪽이 0으로 채워진 문자열 return

# "001"
"1".zfill(3)

# "00123"
"123".zfill(5)

2. rjust(width, [fillchar])

rjust는 0이 아닌 fillchar를 채울 수 있다.

# "001"
"1".zjust(3, "0")

# "00123"
"123".zjust(5, "0")

# "abc123"
"123",zjust(6, "abc")

3. zfill 활용

exercism python track 'clock'에서 기존 코드를 zfill로 이용해 사용해보았다.
if condition으로 처리했던 code가 한결 더 간단해졌다.

class Clock
    ...
    def __repr__(self):
        # hour = str(self.hour) if self.hour >= 10 else "0" + str(self.hour)
        # minute = str(self.minute) if self.minute >= 10 else "0" + str(self.minute)
        # return hour + ":" + minute

        return '{}:{}'.format(str(self.hour).zfill(2), str(self.minute).zfill(2)) # ex. 10:01

'LANG > PYTHON' 카테고리의 다른 글

python 영어 문제 사이트  (0) 2020.12.13