examples - Python agrega ceros a la izquierda usando str.format
python string format (2)
Derivado de ejemplos de formato, ejemplos de anidamiento en los documentos de Python:
>>> ''{0:0{width}}''.format(5, width=3)
''005''
Esta pregunta ya tiene una respuesta aquí:
¿Puedes mostrar un valor entero con ceros a la izquierda usando la función str.format
?
Ejemplo de entrada:
"{0:some_format_specifying_width_3}".format(1)
"{0:some_format_specifying_width_3}".format(10)
"{0:some_format_specifying_width_3}".format(100)
Salida deseada:
"001"
"010"
"100"
Sé que tanto zfill
como el formato basado en %
(por ejemplo, ''%03d'' % 5
) pueden lograr esto. Sin embargo, me gustaría una solución que use str.format
para mantener mi código limpio y consistente (también estoy formateando la cadena con atributos de fecha y hora) y también para expandir mi conocimiento del Mini-Idioma de Especificación de Formato .
>>> "{0:0>3}".format(1)
''001''
>>> "{0:0>3}".format(10)
''010''
>>> "{0:0>3}".format(100)
''100''
Explicación:
{0 : 0 > 3}
│ │ │ │
│ │ │ └─ Width of 3
│ │ └─ Align Right
│ └─ Fill with ''0''
└─ Element index