002_017 Python 在目录树中改变文件扩展名 重命名一系列指定类型的文件

来源:互联网 发布:丰臣秀次 知乎 编辑:程序博客网 时间:2024/06/05 11:15

代码如下:

#encoding=utf-8print '中国'#在目录树中改变文件扩展名 重命名一系列指定类型的 文件import osstr ='123'def swapextensions(dir,before,after):    if before[:1] != '.':        before = '.'+before    thelen = -len(before)    if after[:1] != '.':        after = '.'+after    for path, subdirs, files in os.walk(dir):        for oldfile in files:            if oldfile[thelen:] == before:                oldfile = os.path.join(path,oldfile)                newfile = oldfile[:thelen] + after                os.rename(oldfile, newfile)                #测试import os, fnmatch    def all_files(root, patterns='*', single_level=False, yield_folders=False):      patterns = patterns.split(';')      for path, subdirs, files in os.walk(root):          if yield_folders: #枚举目录              files.extend(subdirs)          files.sort()          for name in files:              for pattern in patterns:                  if fnmatch.fnmatch(name , pattern):                      yield os.path.join(path,name)                      break          if single_level:              break  print '-------1'for path in all_files(r'H:\football\GetFootballMatch\Release'):      print path.decode('gbk') swapextensions(r'H:\football\GetFootballMatch\Release',r'exe',r'exd')print '-------2'for path in all_files(r'H:\football\GetFootballMatch\Release'):      print path.decode('gbk') print '-------3'swapextensions(r'H:\football\GetFootballMatch\Release',r'exd',r'exe')for path in all_files(r'H:\football\GetFootballMatch\Release'):      print path.decode('gbk') 

打印结果如下:

中国
-------1
H:\football\GetFootballMatch\Release\ft.ini
H:\football\GetFootballMatch\Release\足彩辅助.exe
H:\football\GetFootballMatch\Release\足彩辅助.pdb
H:\football\GetFootballMatch\Release\足彩辅助.zip
H:\football\GetFootballMatch\Release\足彩辅助\足彩辅助.exe
-------2
H:\football\GetFootballMatch\Release\ft.ini
H:\football\GetFootballMatch\Release\足彩辅助.exd
H:\football\GetFootballMatch\Release\足彩辅助.pdb
H:\football\GetFootballMatch\Release\足彩辅助.zip
H:\football\GetFootballMatch\Release\足彩辅助\足彩辅助.exd
-------3
H:\football\GetFootballMatch\Release\ft.ini
H:\football\GetFootballMatch\Release\足彩辅助.exe
H:\football\GetFootballMatch\Release\足彩辅助.pdb
H:\football\GetFootballMatch\Release\足彩辅助.zip
H:\football\GetFootballMatch\Release\足彩辅助\足彩辅助.exe

0 0
原创粉丝点击