通过一些模式python重命名几个文件

时间:2014-06-09 15:31:16

标签: python filenames rename

我想构建一个python脚本来执行以下操作

更改所有" bla"到" abd"在文件名中。
例如:

  

123_bla.dd - > 123_abd.dd
   bla .dd - > _abd.dd

我该怎么做?

我试过了:

for fn in os.listdir("."):
    print fn  # test
    if fnmatch.fnmatch(fn, '*bla*'):
        fn = fn.replace(fn, "abd")
        print fn

3 个答案:

答案 0 :(得分:2)

您必须正确使用replace方法:https://docs.python.org/2/library/string.html#string.replace

你必须fn.replace('bla', 'abd')。然后当然要重新命名https://docs.python.org/2/library/os.html#os.rename

答案 1 :(得分:0)

您只是更改包含文件名称的字符串,而不是实际的文件名。尝试使用os.rename()

for fn in os.listdir("."):
    print fn  # test
    if fnmatch.fnmatch(fn, "bla):
        fixed = fn.replace("bla", "abd")
        os.rename(fn, fixed)

答案 2 :(得分:0)

您只是在字符串中获取文件的名称,然后重命名它们,您需要使用os.rename()方法重命名文件。