显示数字的前导零

风流意气都作罢 提交于 2019-12-18 21:14:37

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

鉴于:

a = 1
b = 10
c = 100

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

那是,

01
10
100

#1楼

执行此操作的Pythonic方法:

str(number).rjust(string_width, fill_char)

这样,如果原始字符串的长度大于string_width,则将其原样返回。 例:

a = [1, 10, 100]
for num in a:
    print str(num).rjust(2, '0')

结果:

01
10
100

#2楼

x = [1, 10, 100]
for i in x:
    print '%02d' % i

结果是:

01
10
100

在文档中阅读有关使用%格式化字符串的更多信息


#3楼

在Python 2中,您可以执行以下操作:

print "%02d" % (1,)

基本上就像printfsprintf


对于Python 3. +,可以通过以下方式实现相同的行为:

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

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

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

#4楼

使用格式字符串-http://docs.python.org/lib/typesseq-strings.html

例如:

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

#5楼

在Python 2.6+和3.0+中,您将使用format()字符串方法:

for i in (1, 10, 100):
    print('{num:02d}'.format(num=i))

或使用内置的(对于单个数字):

print(format(i, '02d'))

有关新的格式化功能,请参阅PEP-3101文档。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!