显示带前导零的数字

2022-01-14 00:00:00 python string-formatting integer

问题描述

给定:

a = 1
b = 10
c = 100

如何为所有少于两位数的数字显示前导零?

How do I display a leading zero for all numbers with less than two digits?

这是我期待的输出:

01
10
100


解决方案

在 Python 2(和 Python 3)中你可以这样做:

In Python 2 (and Python 3) you can do:

number = 1
print("%02d" % (number,))

基本上 % 类似于 printfsprintf(参见 docs).

Basically % is like printf or sprintf (see docs).

对于 Python 3.+,同样的行为也可以通过 格式:

For Python 3.+, the same behavior can also be achieved with format:

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


对于 Python 3.6+,使用 f- 可以实现相同的行为字符串:

number = 1
print(f"{number:02d}")

相关文章