добавление ведущих нулей в список чисел в Python
Я новичок в Python. Я пытаюсь настроить формат списка, который выглядит следующим образом:
data=[1,10,313,4000,51234,123456]
и я хотел бы, чтобы преобразовать их в список строк с ведущими нулями:
result=['000001','000010','000313','004000','051234','123456']
каждый элемент имеет 6 цифр.
Я знаю для одного числа X, я могу сделать:
str(X).zfill(6)
но я не уверен, как применить это в список. Я хотел бы решить эту проблему без использования цикла for.
кто-нибудь может помочь? Спасибо.
1 ответов
применить то же самое zfill
, такой
>>> [str(item).zfill(6) for item in data]
['000001', '000010', '000313', '004000', '051234', '123456']
кроме того, вы можете использовать строку format
способ, с спецификаторы формата, такой
>>> ["{:06d}".format(item) for item in data]
['000001', '000010', '000313', '004000', '051234', '123456']
если вы собираетесь делать форматирование чаще, то вы можете сохранить это в переменной, как это
>>> formatter = "{:06d}".format
>>> [formatter(item) for item in data]
['000001', '000010', '000313', '004000', '051234', '123456']
если вы используете Python 2.x, тогда вы можете использовать map
и , такой
>>> map(formatter, data)
['000001', '000010', '000313', '004000', '051234', '123456']
если вы используете Python 3.x,map
возвращает iterable