在for循环中命名文件

时间:2016-06-27 08:03:56

标签: python python-2.7 for-loop

请查看以下最小工作示例(MWE)

import numpy as np
T_val = np.linspace(100,200,15)
for i,T in enumerate(T_val):
    ut_file_name = 'kappaFunction_P_E_%2d.pdf' % i
    print out_file_name

这个MWE的输出如下:

  


  。
  kappaFunction_P_E_ 7.pdf
  kappaFunction_P_E_ 8.pdf
  kappaFunction_P_E_ 9.pdf
  kappaFunction_P_E_10.pdf
  kappaFunction_P_E_11.pdf
  kappaFunction_P_E_12.pdf
  。
  

我打算得到的是

  

... kappaFunction_P_E_08.pdf,kappaFunction_P_E_09.pdf,kappaFunction_P_E_10.pdf ....

不是在单个数字编号之前加上 0 ,而是留下空格。我们怎样摆脱这个?

3 个答案:

答案 0 :(得分:2)

ut_file_name = 'kappaFunction_P_E_{:0>2}.pdf'.format(i)

你应该使用format()。您可以参考https://pyformat.info/或来自https://docs.python.org/2/library/string.html的文档。

答案 1 :(得分:1)

0添加到格式

... %02d.pdf' % i

将打印07,08,09等

答案 2 :(得分:1)

您不需要使用enumerate,因为您只使用索引。 为了使您的格式按预期工作,您需要先使用%02d获取0

import numpy as np
T_val = np.linspace(100,200,15)
for i in range(len(T_val)):
    ut_file_name = 'kappaFunction_P_E_%02d.pdf' % i
    print out_file_name