Afficher le numéro avec les zéros de tête

Étant donné :

a = 1
b = 10
c = 100

Comment afficher un zéro initial pour tous les nombres de moins de deux chiffres ?

C'est-à-dire,

01
10
100
Solution

En Python 2, vous pouvez le faire :

print "%02d" % (1,)

En gros, % est comme printf ou sprintf.


Pour Python 3.+, le même comportement peut être obtenu avec :

print("{:02d}".format(1))

Pour Python 3.6+, le même comportement peut être obtenu avec les chaînes f :

print(f"{1:02d}")
Commentaires (7)
x = [1, 10, 100]
for i in x:
    print '%02d' % i

résulte en :

01
10
100

Lisez [plus d'informations sur le formatage des chaînes de caractères à l'aide de %][1] dans la documentation.

[1] : https://pyformat.info/

Commentaires (1)

Utiliser une chaîne de format - [http://docs.python.org/lib/typesseq-strings.html][1]

Par exemple :

python -c 'print "%(num)02d" % {"num":5}'

[1] : http://docs.python.org/lib/typesseq-strings.html

Commentaires (0)