在子文件夹中应用脚本

时间:2014-01-27 06:01:39

标签: os.walk

我进入一个文件夹并启动python。我想应用一个脚本来修复目录和子文件夹中的文件名。

import os

for dirname, subdirs, files in os.walk('.'):
 os.rename(file, file.replace('\r', '').replace('\n', '').replace(' ', '_')
 print 'Processed ' + file.replace('\r', '').replace('\n', '')

我收到错误“AttributeError:'list”对象没有属性'replace'。请帮帮忙?

1 个答案:

答案 0 :(得分:0)

os.walk返回一个包含脚本根目录,子目录列表和文件列表的3元组。你在for循环中解压缩了3元组,你在文件列表中调用了replace。

你可能想要这样的东西:

for dirname, subdirs, files in os.walk('.'):
   for file in files:
      os.rename(file, file.replace('\r', '').replace('\n', '').replace(' ', '_')
      print 'Processed ' + file.replace('\r', '').replace('\n', '')

您希望遍历文件列表并对这些单个文件进行“替换”。