Dada:
a = 1
b = 10
c = 100
¿Cómo puedo mostrar un cero a la izquierda para todos los números con menos de dos dígitos?
Es decir,
01
10
100
En Python 2 se puede hacer:
print "%02d" % (1,)
Básicamente % es como printf
o sprintf
.
Para Python 3.+ el mismo comportamiento se puede lograr con:
print("{:02d}".format(1))
Para Python 3.6+ el mismo comportamiento se puede lograr con f-strings:
print(f"{1:02d}")
x = [1, 10, 100]
for i in x:
print '%02d' % i
resulta en:
01
10
100
Lea más información sobre el formato de cadenas con % en la documentación.
Utilice una cadena de formato - http://docs.python.org/lib/typesseq-strings.html
Por ejemplo:
python -c 'print "%(num)02d" % {"num":5}'