Python - 重命名文件并为其提供序号

时间:2014-08-30 09:00:55

标签: python

我有这么多格式的文件:

file (2009).jpg
file (2010).jpg
file (2011).jpg

...等

我想让他们这样:

file (2009) (1).jpg
file (2009) (2).jpg
file (2009) (3).jpg

我可以处理更改日期:

import os, re
for i in os.listdir('.'):
    os.rename(i, re.sub(r'\d{4}', '2009', i))

但我无法弄清楚如何添加序列号。我尝试将变量设置为1,然后在for循环中递增,但我做错了什么:

import os, re
n = 1
for i in os.listdir('.'):
    os.rename(i, re.sub(r'\d{4}', '2009', i))
    # use n to increment the filename, but how?

感谢任何帮助。

1 个答案:

答案 0 :(得分:4)

你可以动态地改变你在循环中替换的东西,就像这样

import os, re
n = 1
for i in os.listdir('.'):
    os.rename(i, re.sub(r'\(\d{4}\)', '(2009) ({n})'.format(n=n), i))
    n += 1