生成一系列数字作为字符串Python

Moo*_*han 5 python loops

我需要使用结构化文件名循环遍历许多文件.

它们的形式为'Mar00.sav','Sep00.sav','Mar01.sav'

目前我这样做;

Years = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17']
Run Code Online (Sandbox Code Playgroud)

哪个有效,但我想知道是否有更好的方法?

我尝试了范围,但 str(range(00,17))会掉落前导零...

Tar*_*syk 9

我遇到了同样的问题,并且有一个完美的解决方案 - zfill方法

用法示例:

>>> str('1').zfill(7)
'0000001'
Run Code Online (Sandbox Code Playgroud)

您需要做的是为N个数字创建一个生成器并用零填充其字符串表示.

>>> for i in range(1, 18):
...     str(i).zfill(2)
...
'01'
'02'
'03'
...
'16'
'17'
Run Code Online (Sandbox Code Playgroud)


Sat*_*yur 8

>>> [str(i).zfill(2) for i in range(1,18)]
['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17']
Run Code Online (Sandbox Code Playgroud)