我們如何使用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