Подтвердить что ты не робот

Добавить ведущий Zero Python

Мне было интересно, может ли кто-нибудь помочь мне добавить начальный ноль в эту существующую строку, когда цифры поют (например, 1-9). Вот строка:

str(int(length)/1440/60)
4b9b3361

Ответ 1

Вы можете использовать встроенный str.zfill метод, например

my_string = "1"
print my_string.zfill(2)   # Prints 01

my_string = "1000"
print my_string.zfill(2)   # Prints 1000

В документах

Возвращает числовую строку, заполненную нулями в строке длины ширина. Префикс знака обрабатывается правильно. Исходная строка если ширина меньше или равна len (s).

Итак, если фактическая длина строки больше указанной ширины (параметр передан в zfill), строка возвращается как она есть.

Ответ 2

Используя format или str.format, вам не нужно преобразовывать число в str:

>>> format(1, '02')
'01'
>>> format(100, '02')
'100'

>>> '{:02}'.format(1)
'01'
>>> '{:02}'.format(100)
'100'

Согласно документации str.format:

Этот метод форматирования строк является новым стандартом в Python 3 и должен быть предпочтительнее% форматирования...

Ответ 3

Надеюсь, это самый простой способ:

 >>> for i in range(1,15):
 ...     print '%0.2d' % i
 ...
 01
 02
 03
 04
 05
 06
 07
 08
 09     
 10
 11
 12
 13
 14
 >>>