生成特定格式的数字列表

新手上路,请多包涵

我需要生成特定格式的数字列表。格式是

mylist = [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15]
#Numbers between 0-9 are preceded by a zero.

我知道如何使用 range 生成一个普通的数字列表

>>> for i in range(0,16):
...     print i

那么,python中有没有内置的方法来生成指定格式的数字列表。

原文由 RanRag 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 526
2 个回答

Python 字符串格式 允许您指定精度:

精度(可选),以 ‘.’ 形式给出(点)后跟精度。

在这种情况下,您可以使用它的值为 2 来获得您想要的:

 >>> ["%.2d" % i for i in range(16)]
['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12',
 '13', '14', '15']

您还可以使用 zfill 函数:

 >>> str(3).zfill(2)
'03'

或字符串格式函数:

 >>> "{0:02d}".format(3)
'03'

原文由 jterrace 发布,翻译遵循 CC BY-SA 3.0 许可协议

Python 3.x 中的一个衬里

[f'{i:>02}' for i in range(1, 16)]

输出:

 ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15']

原文由 Suhas_Pote 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题