我们如何使用python生成四位数计数器?Python四位计数器
range(0,9999)
将有1位数字,2位数字和3位数字。我们只需要4位数字。
即0000至9999
当然,最简单的pythonic方法。
我们如何使用python生成四位数计数器?Python四位计数器
range(0,9999)
将有1位数字,2位数字和3位数字。我们只需要4位数字。
即0000至9999
当然,最简单的pythonic方法。
格式化要用0填充的字符串。为了获得0〜9999填充列表以及零:
["%04d" % x for x in range(10000)]
同样的事情适用于5,6,7,8零等。注意,这会给你一个字符串列表。没有办法让整数变量填充零,所以字符串尽可能的接近。
相同格式的操作也适用于单个整数。
你不知道。输出或处理时,您的格式为4位数字。
print '%04d' % val
,如果你想选择字符串格式化,因为很多建议,并且您使用的是Python不小于2.6,请注意在其最新版本中使用字符串格式。相反的:
["%04d" % idx for idx in xrange(10000)]
it is suggested来选择:
["{0:0>4}".format(i) for i in xrange(1000)]
这是因为后者的方式是在Python 3使用的默认成语格式字符串,我想这是一个好主意,以提高你的代码可移植到未来的Python版本。
正如有人在评论中说,在Python 2.7+没有必要指定位置参数,所以这也是有效的:
["{:0>4}".format(i) for i in xrange(1000)]
你'范围()'调用并不实际生产9999 ,但在9998处停止。这是因为'range()'的“end”参数是一个小于限制,例如在“生成所有以0开始并且小于9999的数字”中。您需要使用10000。 – 2011-03-10 07:06:42
明白了。谢谢。 – LynxLee 2011-03-10 07:09:12
如果您选择字符串格式,请[%s](http://docs.python.org/library/stdtypes.html#str.format)str.format(* args,** kwargs)为%formatting.' [ “{0:0> 4}”。格式(i)为xrange(10)中的i]' – Paolo 2011-03-10 08:42:56