Python中将数字格式化时,有些时候需要将数字格式化, 为了显示美观,需要补零。今天在写代码时,看见别人的奇怪写法,觉得有必要在这里把Python更好的写法重写一下。
看到的别人的代码
for
i
in
range
(
99
)
:
num_str
=
str
(
i
)
if
len
(
num_str
)
>
1
:
num_str
=
'0'
+
str
(
i
)
print
(
num_str
)
看到这段代码,我的三观被刷新了。如果补零比较多, 确实代码的行数可观。
常见和不常见的格式化补零方法
for
i
in
range
(
99
)
:
num_str
=
'%02d'
%
i
print
(
num_str
)
# 数字已经转成了字符串格式
# Python zfill() 方法返回指定长度的字符串,原字符串右对齐,前面填充0。
num_str1
=
'123'
num_str2
=
'-123'
print
(
num_str1
.
zfill
(
5
)
)
# 00123
print
(
num_str2
.
zfill
(
5
)
)
# -0123