str.zfill()

Метод zfill() возвращает строку, дополненную нулями слева до заданной ширины. Если в начале строки находится знак + или -, нули вставляются после знака, а не перед ним. Если длина исходной строки уже не меньше width, метод возвращает её без изменений.

Метод удобен для форматирования числовых значений: номеров, кодов, временных меток.

Сигнатура

str.zfill(width)

Параметры

  • width — целое число, минимальная ширина результирующей строки.

Возвращаемое значение

Новая строка длиной не меньше width. Исходная строка не меняется.

Примеры использования

Пример 1. Простое заполнение.

print("42".zfill(5))
print("7".zfill(3))
00042
007

Пример 2. Сохранение знака.

print("-42".zfill(6))
print("+7".zfill(5))
-00042
+0007

Пример 3. Строка длиннее ширины.

print("1234567".zfill(3))
1234567

Пример 4. Идентификаторы устройств.

for device_id in [1, 25, 480]:
    print("DEVICE_" + str(device_id).zfill(4))
DEVICE_0001
DEVICE_0025
DEVICE_0480

Пример 5. Формирование временной метки.

hours, minutes, seconds = 7, 5, 9
stamp = f"{str(hours).zfill(2)}:{str(minutes).zfill(2)}:{str(seconds).zfill(2)}"
print(stamp)
07:05:09

См. также

  • str.rjust() — выравнивание по правому краю произвольным символом

  • str.ljust() — выравнивание по левому краю

Примечание

Лицензия и источники

Техническое описание метода адаптировано из официальной документации Python (https://docs.python.org), доступной под Python Software Foundation License Version 2. Перевод на русский, примеры использования и пояснения — © AlashEd Wiki.